4
我不知道如何解释我的问题,但我会试一试。Laravel 5数据透视表问题
我使用Laravel 5和我有3个表:
- 页
- 语言
- language_page
这是我的模型是这样的: 页型号:
public function languages()
{
return $this->belongsToMany('App\Language', 'language_page')
->withPivot('title', 'content', 'slug', 'meta_title', 'meta_description')
->orderBy('main', 'desc');
}
语言模型:
public function pages()
{
return $this->belongsToMany('App\Page')
->withPivot('title', 'content', 'slug', 'meta_title', 'meta_description');
}
什么我想要做从页表,其中LANGUAGE_ID一定的ID返回一个记录,并且在蛞蝓是有一定的文字。
这是我走到这一步:编辑:
Page::with(['languages' => function($q) use($language_id, $slug) {
$q->where('language_id', $language_id);
$q->wherePivot('slug', $slug);
}])
->first();
我的问题:我怎样才能增加一个where子句与(从透视表language_page)列塞?
我希望这是任何意义..
谢谢!不知道它的存在,我会研究它 – yinshiro
我更新了我的问题,这就是我改变它,虽然它的输出将永远是第一个记录(它忽略where子句或什么?) – yinshiro
可能你检查生成了什么SQL?只需将 - > first()替换为 - > toSql()和dd(),值 –