- 已关闭**。此问题需要超过focused。当前不接受答案。
- 想要改进此问题吗?**更新此问题,使其仅关注editing this post的一个问题。
20小时前关门了。
Improve this question
我看不出这个代码有什么问题。请帮帮我。
public function index()
{
return view('listings.index', [
'listings' => Listing::latest()->filter((['tags']))->get()
]);
1条答案
按热度按时间clj7thdc1#
就像Karl Hill先生提到的,你忘记关闭你的
index
方法体,但这不是你的问题,无论如何,你试图访问一个名为filter
的方法,你没有在你的Listing
模型上定义它,而filter
方法不是由laravel查询构建器或Eloquent ORM本身提供的,但是你可以在你的模型中创建一个作用域,这样你就可以使用你的作用域来过滤你的数据,你不需要这样做,因为laravel已经为你提供了一个,它可以帮助你很容易地过滤掉来自你的模型的数据,它是whereIn()
,它接受一个数组,它'我将在您提供的列表中逐个循环记录,并根据您提供的数组过滤数据,如果您已经为tags
分隔了表,则可以在模型上定义一个一对多关系,然后可以使用laravel Eloquent ORM提供的匿名where语句,如下所示'使用您在Listing
表上创建的关系过滤数据的代码: