这是什么错误?
Response内容必须是字符串或对象实现 __toString(),“boolean”给出。
public function search()
{
$keyword = request('search');
$articles = Article::search($keyword)->latest()->get();
$courses = Course::search($keyword)->latest()->get();
return $articles or $courses;
}
我应该说什么而不是或?
答案 0 :(得分:1)
使用or
是条件运算符,它将在结果中给出布尔值,使用三元运算符来实现,就像这样。
public function search()
{
$keyword = request('search');
$articles = Article::search($keyword)->latest()->get();
$courses = Course::search($keyword)->latest()->get();
return $articles ? $articles : ($courses ? $courses : '' );
}
答案 1 :(得分:0)
您正在返回boolean
而不是string
。您需要将其更改为类似的内容才能使其正常工作:
return $articles->isEmpty() ? $courses : $articles;
或者:
return response()->json($articles->isEmpty() ? $courses : $articles);