2016-09-23 5 views
-1
  • 판매기, hasMany의 연회는 여기

내 쿼리입니다 :Laravel 관계 데이터는

$banquet = Vendor::with(['banquet' => function($query){ 
     $query->where('active',1)->where('id' ,1)->first(); 
     }])->findOrfail(1); 

하지만 관계 부분은 get() 방법과 같은 집합을 반환하지 first()

#relations: array:1 [▼ 
    "banquet" => Collection {#283 ▼ 
     #items: array:1 [▼ 
     0 => Banquet {#285 ▼ 

어떻게 이런 방식으로 전환 할 수 있습니까? 난 그냥 $vendor->banquet하지 $vendor->banquet[0]

#relations: array:1 [▼ 
    "banquet" => Banquet {#285 ▼ 
+0

당신은 같은 시간에 제 findorfail 필요가 없습니다. findorfail을 시도해보고 어떻게 되나요? –

+0

모두 똑같습니다. – Fan

답변

0

내가 생각처럼 연회 데이터를 얻을 수 있도록, 당신은 연회 OneToMany을 사용하고 있습니다.
그래서 컬렉션/배열에 들어갑니다.

OneToOne으로 시도하십시오. 당신이 어떤 변화를 가졌는지 여부를 말하십시오.

return $this->belongsTo(); 

연회 법.

또는

return $this->hasOne();