我有两个表tbl\u law\u master和tbl\u law\u sub\u master在这两个表上都有一个名为assigned\u to的列,该列存储用户id。
我的任务是通过加入tbl\u law\u master的law\u id,从tbl\u law\u sub\u master获取特定用户id的sublaw。
这是我的密码,
$law_id = $_GET['law_id'];
$sublaw = DB::table('tbl_law_sub_master')
->select('tbl_law_sub_master.*', 'tbl_law_master.lm_id', 'tbl_law_master.law_name', 'tbl_law_master.id as lawId')
->leftJoin('tbl_law_master', 'tbl_law_master.id', '=', 'tbl_law_sub_master.lm_id')
->where('tbl_law_sub_master.lm_id', $law_id)
->orderBy('type_of_event', 'asc')
->orderBy('section', 'asc')
->orderBy('rules', 'asc')
->orderBy('notification', 'asc')
->orderBy('circular', 'asc')->get();
if (!in_array(Auth::user()->role, [1, 7]))
{
$sublaw = $sublaw->where('tbl_law_master.assigned_to', Auth::user()->id);
}
它显示了我的错误
调用数组上的成员函数where()
2条答案
按热度按时间dw1jzc5e1#
我想你应该在最后一次之后打电话给get
where
声明ttvkxqim2#
问题是你已经打过电话了
get()
然后调用where()
再一次。您应该像这样使用where子句函数