2013-07-31 4 views
0

내 로컬 컴퓨터 (WAMP, PHP 5.4.3)에서는 작동하지만 프로덕션 서버 (CentOS, PHP 5.4.11)에서는 작동하지 않는 코드가 있습니다.Laravel 라이브 서버가 열심히로드되지 않습니다.

$sharedList = SharedList::with('itemList') 
          ->where('unique_url', '=', $uniqueURL) 
          ->first(); 

내가하지 않으면 내가() 열망로드로는 다음이 문제없이 실행 제거하면 (내가 할 필요가 없습니다 : 내가 왜 볼 수없는, 코드의 잘못된 행은 나는이 얻을) 내 로컬 컴퓨터에 :

Argument 2 passed to Illuminate\Database\Eloquent\Relations\BelongsTo::match() 
must be an instance of Illuminate\Database\Eloquent\Collection, instance of 
ItemList given, called in /home/mgc/public_html/test/vendor/laravel/framework 
/src/Illuminate/Database/Eloquent/Builder.php on line 474 and defined 

/home/site/public_html/test/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations/BelongsTo.php 

line 154: public function match(array $models, Collection $results, $relation) 

SharedList 모델에서 관련 관계 정보는 다음과 같습니다

class SharedList extends Ardent { 

public function itemList() 
{ 
    return $this->belongsTo('ItemList', 'list_id'); 
} 

대문자 문제인지 알고 싶습니다. with() 메소드에서 ItemList, itemlist 및 itemList를 시도했습니다.

열심히 문제가 될 수 있지만 extend Eloquent을 사용하여 extend Ardent을 바꾸지 않으려 고 시도했습니다.

답변

0

with('itemList')은 관계를 설정하는 함수의 이름이어야하므로 올바른 것입니다. 문제가 where 절로 이어질 수 있다는 느낌이 들었습니다. 게으른 열망로드.

$sharedList = SharedList::where('unique_url',$uniqueURL)->get(); 
$sharedList->load('itemList'); 
+0

안녕하세요, 정확히 똑같은 오류가 발생합니다. 어떻게 든 관계 설정에 이릅니다. –

관련 문제