我有一個與標簽模型具有多對多關系的文章模型
文章模型_
class Article extends Model
{
public function tags()
{
return $this->belongsToMany(Tag::class);
}
}
標簽模型_
class Tag extends Model
{
public function articles()
{
return $this->belongsToMany(Article::class);
}
}
我想要的是獲取與文章表中至少一篇(或多篇)文章相關的所有唯一標簽。我想通過Article模型中的靜態方法來檢索它,如下所示
public static function allTags()
{
// return static:: all the tags
}
我怎樣才能做到這一點?提前致謝。
編輯:這就是我解決它的方法。感謝幫助!
public static function allTags()
{
return Tag::query()->whereHas('articles', function($query) {
$query->where('status', '<>', 'draft');
})->pluck('tag', 'id');
}
uj5u.com熱心網友回復:
使用whereHas()
$tags = Tag::query()->whereHas('articles')->get();
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/492970.html
上一篇:關系表whereHas和幾個值的Laravel查詢構建器
下一篇:Laravel9-GEThttp://localhost:8000/css/app.cssnet::ERR_ABORTED404(未找到)
