【发布时间】:2023-04-05 09:21:01
【问题描述】:
在普通 PHP 中我有一个 sql 查询
$q = 'shojib'; or $q = '01913711...'; or $q = 'House 23...';
select * from member where LoginName like '%$q%' or mobile like '%$q%' or ConnectionAdderss like '%$q%' order by LoginName LIMIT 10;
我想用 laravel 写这个查询。 请帮帮我。
我在 laravel 成员模型中使用 SoftDeletingTrait
Member::where('zone', 'like', '%'.$key.'%')
->orWhere('login_name', 'like', '%'.$key.'%')
->orWhere('mobile', 'like', '%'.$key.'%')
->orWhere('name', 'like', '%'.$key.'%')
->orderBy('login_name')
->take('100')
->get();
但它会返回数据库中的所有数据,deleted_at 不为空;
它应该只返回那些deleted_at为空的数据;
【问题讨论】:
-
您的查询应该只返回未被删除的项目。要退回已删除的项目,您必须使用
onlyTrashed或withTrashed。 -
它返回所有已删除的数据而不是同时删除的数据。但它应该只返回未删除的数据
标签: php mysql laravel laravel-4 eloquent