2015-10-04 2 views
0

Извините за вопрос о нобе, но я не могу делать активные загрузочные работы, а вместо этого получаю: Trying to get property of non-object на мой взгляд (index.blade.php ниже).Laravel - Eager Loading - Попытка получить свойство не-объекта

Users Таблица

id | first_name | other_columns 

Кредиты Таблица

id | recipient | other_columns 

recipient является id из таблицы Users.

Credit.php

class Credit extends Model { 
    public function recipient() { 
     return $this->belongsTo('App\User', 'recipient'); 
    } 
} 

User.php

class User extends Model { 
    public function credits() { 
     return $this->hasMany('App\Credit', 'recipient'); 
    } 
} 

CreditController.php

class CreditController extends Controller { 
    public function index() { 
     $credits = Credit::with('recipient')->get(); 
     return view('pages.credits.index')->withCredits($credits); 
    } 
} 

index.blade.php

@foreach($credits as $credit) 
    {{ $credit->recipient->first_name }} 
@endforeach 

Что мне не хватает?

ответ

1

Я решил эту проблему путем изменения в моей Credit Модель:

public function recipient() {} 

в

public function user() {} 
Смежные вопросы