Laravel 4 eloquent models chaining additional where clauses(Laravel 4 eloquent 模型链接额外的 where 子句)
问题描述
我有以下代码(成员只是一个标准的 Eloquent 模型)
I Have the following code (member is just a standard Eloquent model)
$members = new Member;
$members->where('user_id', '=', 5);
$_members = $members->get();
最后一次查询运行产生SELECT * from members
",所以它似乎忽略了我的where子句,我在这里做错了什么?
The last query run produces "SELECT * from members
", so it seems to be ignoring my where clause, what am I doing wrong here?
顺便说一句,我知道我可以做 $members = new Member::where(...)
等...但我将添加 where
子句在一个循环中,以便对来自数据库的结果进行过滤.
By the way I know I could do $members = new Member::where(...)
etc... but I will be adding the where
clauses in a loop in order to create filtering on the results from the database.
更新
解决这个问题的唯一方法似乎是添加一个可以捕获所有初始化的地方,例如:
The only way around this seems to be to add a where that will catch all on initialization such as:
$members = Member::where('member_id', '<>', 0);
$members->where('user_id', '=', 5);
$_members = $members->get();
但这看起来有点像黑客.我不想做任何复杂的事情,所以我不能是唯一遇到这个问题的人吗?
But this seems quite a bit of a hack. I am not trying to do anything complicated so I cant be the only one who has had this problem?
可能是固定的
对于在这里偶然发现的任何人,我已经使用以下方法解决了这个问题:
For anyone who has stumbled here I have fixed this by using:
$members = Member::query();
$members->where('user_id', '=', 5);
$_members = $members->get();
不确定这是否是正确的方法,但它对我有用,而且看起来不像黑客.
Not sure if that is the correct way but it works for me and doesn't appear like a hack.
推荐答案
我不相信 Eloquent 是这样工作的.
I don't believe Eloquent works like that.
试试这个...
$members = new Member;
$members = $members->where('user_id', '=', 5);
$members = $members->get();
这篇关于Laravel 4 eloquent 模型链接额外的 where 子句的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Laravel 4 eloquent 模型链接额外的 where 子句
基础教程推荐
- Doctrine 2 - 在多对多关系中记录更改 2022-01-01
- 在 yii2 中迁移时出现异常“找不到驱动程序" 2022-01-01
- 找不到类“AppHttpControllersDB",我也无法使用新模型 2022-01-01
- 在 CakePHP 2.0 中使用 Html Helper 时未定义的变量 2021-01-01
- 使用 PDO 转义列名 2021-01-01
- 如何在 Symfony 和 Doctrine 中实现多对多和一对多? 2022-01-01
- phpmyadmin 错误“#1062 - 密钥 1 的重复条目‘1’" 2022-01-01
- 如何在 XAMPP 上启用 mysqli? 2021-01-01
- HTTP 与 FTP 上传 2021-01-01
- PHP 守护进程/worker 环境 2022-01-01