我有三张桌子:
studios, users, programs
表程序属于用户用户,表用户属于工作室。
我想从带有来自工作室的id的表中获取所有程序,其中包含程序的where子句。
我在工作室班级
public function programs()
{
return $this->hasManyThrough('Studio\Program', 'Studio\User')->with('user');
}
我用
Studio::programs->where('date', '=', $date)->where('room', '=', $room)
Laravel得到Call to undefined method Illuminate\Database\Eloquent\Collection::where()
如何从具有指定工作室ID的表程序中获取所有程序?
Studio::find(1)->programs()->where('date', '=', $date)->where('room', '=', $room);
工作,但所有元素都是合并的。
谢谢!
答案 0 :(得分:0)
你可以试试这个:
$studios = Studio::with('programs' => function($query) use ($date) {
$query->where('date', $date);
})->where('room', $room)->get();