我想运行查询"SELECT * FROM users WHERE author = 'mubeen' && name LIKE '%query%'"
但是我没有成功获得结果。得到此错误
Symfony \ Component \ HttpFoundation \ ParameterBag类的对象可以 不能转换为字符串。
我在Google上搜索时应用了不同的查询策略来获取数据,但没有获得收益。
这是我的控制者
usersController.php
public function searchingResults(Request $request)
{
$query = $request->query;
$users = User::where([
['author', 'mubeen'],
['name' ,'LIKE','%'.$query.'%'],
])->orderBy('created_at','desc')->paginate(4);
$roles = Role::where(
'author' , 'superAdmin'
)->get();
return view('BackEnd.users.searchResults',compact('users','query'));
}
如果我输入“%$ query%” ,即使我输入与db表相同的名称,我也不会出错,也不会得到任何结果。请帮助我,我在浪费之后在这里提出问题我在其他地方的4-5个小时。
谢谢
答案 0 :(得分:0)
尝试
Department 1
确保Requset的名称空间为12
检查您的表单,确保它是发布方法
检查表单中输入字段(查询)的名称
答案 1 :(得分:0)
您尝试过这个吗? :
$users = User::where('author', 'mubeen')
->where('name' ,'LIKE', '%'.$query.'%')
->orderBy('created_at','desc')
->paginate(4);
答案 2 :(得分:0)
我通过将 name =“ query”的名称 attribute 更改为name =“ q”来解决了这个问题。
我不知道问题是name =“ query”,否则一切都一样。
因此,我建议您不要使用'%'。$ userInput。'%',但我没有得到任何结果作为搜索结果。
如果我在where子句中使用“%”。$ userInput。“%”并更改了name属性,对我来说一切正常:)