【发布时间】:2019-06-17 13:12:32
【问题描述】:
我在两个模型之间存在多对多关系:Album 和 Media。
这里可以看到Album模型:
class Album extends Model
{
public function medias()
{
return $this->belongsToMany('\Api\Medias\Models\Media');
}
}
这里是Media 模型:
class Media extends Model
{
public function albums()
{
return $this->belongsToMany('\Api\Medias\Models\Album');
}
}
现在我想选择属于public=1 的专辑的所有媒体。雄辩的查询是这样的:
return $this->getModel()::whereHas('albums', function($query) {
$query->where('public', '=', '1');
})->get();
但我在whereHas 行中收到此错误:
local.ERROR: ErrorException: compact(): Undefined variable: operator in...
我正在使用 Laravel Framework 5.4.36。
【问题讨论】:
标签: php laravel eloquent laravel-5.4 laravel-5.5