$game->category_id
не вернет отношения, как вы их назвали public function category()
. Вам нужно использовать
<td>{{ $game->category->name }}</td>
(Не уверен, какой столбец category
вы пытаетесь отобразить, предположил name
)
Кроме того, следуйте соглашениям Laravel. Названия моделей единичны, поэтому должно быть
class Game extends Model { ... }
class Category extends Model { ... }
Кроме того, вам может потребоваться предоставить внешний ключ, если отношения не совсем работают:
return $this->hasOne('App\Categories', 'category_id');
Я вижу еще одну проблему. Вы не можете иметь hasMany
в паре с hasOne
; где-то там должен быть belongsTo
. Game
принадлежит Category
, а Category
может иметь много Game
с:
Games.php
class Games extends Model
{
public function category()
{
return $this->belongsTo('App\Categories', 'category_id');
}
}