2013-06-14 2 views
2

관련 모델을 가져올 때 열망하는로드를 얻으려고합니다.열렬한로드 Laravel Eloquent 관련 모델

public function allCompanies() { 
    $companies = $this->companies()->active()->get(); 
    $companies->load('Industry'); 
    return $companies; 
} 

내가 모델 산업에이 기능을 가지고 있고이 현재 산업 내에있는 회사를 가져올 것으로 판단, 또한 회사의 관련 산업 (이 현재 기록 될 것입니다)

를 가져해야

이것은 각 산업에 대해 산업을 다시 가져 오는 회사를 반복 할 때처럼 작동하지 않는 것 같습니다.

$companies->load('Industry'); 라인에 문제가 있습니까?

감사

답변

5

시도 :

public function allCompanies() { 
    $companies = $this->companies()->active()->with('industry')->get(); 
    return $companies; 
} 

() 및 부하() 기능을 가진 모델 내에서 기능을 참조하고 있지 모델 자체 예 :

class Company extends Eloquent { 

    public function industry() 
    { 
     return $this->belongsTo('Industry'); 
    } 
} 
class Industry extends Eloquent { 

     public function companies() 
     { 
      return $this->hasMany('Company'); 
     } 
} 

참조하시기 바랍니다 http://laravel.com/docs/eloquent#eager-loading

+0

감사합니다. 내가 그 옵션을 시도했다고 맹세 할 수는 있지만 분명히하지는 않았다! 회사가 단지 하나가 아닌 많은 모델을 가지고있는 관련 모델을 열렬히로드 할 수 있습니까? – ArthurGuy

+0

예, 관계가 올바르게 설정되면 Collection을 반환합니다. –

관련 문제