🐷

laravel-adminでリレーショナルデータの要素数を表示する

2021/12/07に公開

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

ログインするとコメントできます