我不知道为什么,但是 mt User 模型点从 DB 获取行。但是门面 DB 明白了。在模型上也没什么特别的。在从 DB 获取它之前,我由工厂创建了这个 DB 行。它可以是什么?User::where('public_key', $data['merchant_key'])->where('type', 'merchant')->first()DB::table('users')->where('public_key', $data['merchant_key'])->where('type', 'merchant')->first()
2 回答
慕的地8271018
TA贡献1796条经验 获得超4个赞
您在模型中使用了 Softdelete,它会deleted_at
在您的表中查找一列。如果没有找到它会抛出一个错误。因此,如果您使用 softdelete 特性,请确保您的表有一deleted_at
列。
对于您的信息,如果您使用模型获取数据,则不会出现软删除的行。但是,如果您使用 DB Facade 获取数据,也会出现软删除的行。在Laravel 文档中阅读有关软删除的信息
绝地无双
TA贡献1946条经验 获得超4个赞
这是因为,可能您正在使用softdelete .model 将添加额外的查询(范围)(其中已删除的_at 为空)。并且Db 外观不会检查它,因为在模型内部使用了 softdelete 特性。
- 2 回答
- 0 关注
- 197 浏览
添加回答
举报
0/150
提交
取消