江湖救急

请问模型里面添加的访问器能用做查询构建器的查询条件吗?

《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
ALMAS
最佳答案

访问修改器是对查询出来后的数据进行处理,所以不能当做查询条件

5年前 评论
讨论数量: 13
liuhuo

求大神帮助

5年前 评论
yema

如果我没理解错。你构建查询的时候,返回的结果已经被访问器处理过了。

5年前 评论
liuhuo

@yema 现在用访问器属性去做条件查询会报错 没有这个字段

5年前 评论
yema

你访问器没写错吧?麻烦你把访问器和查询的代码贴贴。

5年前 评论
liuhuo

@yema 查询结果访问器属性是添加成功的 但是用作筛选的时候报错了

file
下面是查询条件
file

5年前 评论
yema

我不太懂你的意思。访问器用来访问时自动去修改访问的值。你要做查询构建,完全可以使用

file

5年前 评论
yema

对了。报错信息哪。

5年前 评论
liuhuo

@yema 我本来逻辑是订单的商品总数量需要大于退货总数量,但是订单表是没有退货总数量的,所以我添加了一个访问器属性去做筛选然后就报错了

5年前 评论
ALMAS

访问修改器是对查询出来后的数据进行处理,所以不能当做查询条件

5年前 评论
liuhuo

@ALMAS 谢谢啊 请问下有没有方法用主表某字段和关联表某字段的和作比较去查询的方法呢?

5年前 评论
ALMAS

where里写subQuery或者用whereRaw试试

5年前 评论
liuhuo

@ALMAS 非常感谢

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!