$members = new Member;
$members->where('user_id', '=', 5);
$_members = $members->get();
最后一次查询运行会产生“ SELECT * from Members”,因此似乎忽略了我的where子句,这是我在做什么错?
顺便说一句,我知道我可以做$members = new Member :: where(…)等…,但是我将在循环中添加where子句,以便对数据库结果进行过滤.
UPDATE
解决此问题的唯一方法似乎是添加一个可以捕获所有初始化的位置,例如:
$members = Member::where('member_id', '<>', 0);
$members->where('user_id', '=', 5);
$_members = $members->get();
但这似乎是一个很大的漏洞.我没有尝试做任何复杂的事情,所以我不能成为唯一遇到此问题的人吗?
已修正
$members = Member::query();
$members->where('user_id', '=', 5);
$_members = $members->get();
不知道这是否是正确的方法,但是它对我有用,并且看起来并不像hack.
解决方法:
我不相信Eloquent这样的作品.
尝试这个…
$members = new Member;
$members = $members->where('user_id', '=', 5);
$members = $members->get();