Я очень новичок в Laravel и сейчас я экспериментирую.Поэтому я решил попытаться установить связь между гипотетическим онлайн-продуктом для продажи, у которого в базе данных есть поля 'country_from' и 'country_to'.Короче говоря, я установил отношения, и всякий раз, когда я делаю продукт через формы, данные должным образом отражаются в базе данных.Однако, когда я пытаюсь отобразить данные обратно (название страны), я получаю сообщение об ошибке «Попытка получить свойство« имя »необъекта».
Product
Модель
protected $fillable = [
'country_from',
'country_to',
'title',
'body',
'price',
'availability'
];
public function countries(){
return $this->belongsTo('App\Country');
}
Country
Модель
protected $fillable = ['name'];
public static $rules = array('name'=>'required|min:3');
public function products(){
return $this->hasMany('App\Product');
products
таблица: идентификатор, идентификатор_пользователя, идентификатор_каталога страны, идентификатор страны, идентификатор страны, идентификатор фото, название, тело, цена, доступность, созданный_ат, обновленный_ат
countries
таблица: идентификатор, имя, create_at, updated_at
В моем блейде $product->country_from
отображает правильное значение установленного идентификатора.
Однако, когда я пытаюсь: $product->country->name
Я получаю:
ErrorException (E_ERROR) Пытается получить свойство 'name' не-объекта
Кто-нибудь знает, что я делаю не так?Я совершенно новичок в Laravel и PHP и держу пари, что я делаю что-то не так с отношениями, но я понятия не имею, что ..