php-Laravel 4雄辩的模型链接了附加的where子句

我有以下代码(成员只是一个标准的口才模型)

$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();

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...