我正在我的项目中设置搜索,该搜索包括多个要搜索的模型。首先,我尝试使用scout和scout扩展,但是它对where子句没有太大的灵活性。所以我想看看{ {1}},但似乎它的依存关系是composer require spatie/laravel-searchable
。
但是我的laravel 5.8
版本是laravel
。请提供解决方案。
我应该如何继续?
我尝试使用童军和扩展的童军,但它与where子句并没有太大的灵活性
5.7.28
这非常有效,因为这是简单的查询,但是如果我尝试使用 童军和阿尔高利亚(搜索请求)
$channels = Channel::where('created_at', '>', now()->subDays(7))->get();
return view('search.index')->with(compact('channels'));
它没有给出任何结果。
当我尝试安装$channels = Channel::search($request->q)->where('created_at', '>', now()-
>subDays(7))->get();
我收到此错误
问题1
- 只能安装以下之一:laravel / framework [v5.7.28,5.8.x-dev]。
- 只能安装以下之一:laravel / framework [5.8.x-dev,v5.7.28]。
- 只能安装以下之一:laravel / framework [5.8.x-dev,v5.7.28]。
- spatie / laravel-searchable 1.3.0需要laravel / framework〜5.8.0-> laravel / framework [5.8.x-dev]可以满足要求。
- spatie / laravel-searchable ^ 1.3的安装请求->可满足 通过spatie / laravel-searchable [1.3.0]。
- laravel / framework的安装请求(锁定在v5.7.28,必填 as 5.7。*)-> laravel / framework可以满足[v5.7.28]。
答案 0 :(得分:1)
Laravel 5.7支持与v1.3.0
一起删除,因此您需要安装旧版本。
变更日志:https://github.com/spatie/laravel-searchable/blob/master/CHANGELOG.md
您可以使用以下命令安装旧版本:
composer require spatie/laravel-searchable:1.2.3
或将此版本添加到您的composer.json
文件中并运行composer update