🐷
laravel-adminでリレーショナルデータの要素数を表示する
Laravel-Adminの管理画面上に、例えば、記事(Article)に紐づくいいね数(Like)を表示したい場合があるとします。
その場合どうすれば良いかというと
まずはモデル(Article.php)に 1対多のリレーションを貼ります。
public function likes()
{
return $this->hasMany(Like::class, 'article_id', 'id');
}
次にlaravel-adminでいいね数を表示します。
protected function grid()
{
$grid->likes('いいね数')->count();
}
これだけでOKです!
ブックマーク数が欲しい場合は $grid->likes('いいね数')->count();
にすれば良いですし、ラベルで表示した場合は $grid->likes('いいね数')->count()->lable();
という表示の仕方もできます!
めちゃめちゃ簡単で驚きました。これは便利ですね。
今後も発見があったら記事に残していこうと思います!
Discussion