2016-09-19 114 views
0

我试图运行命令php artisan scout:import "App\User"根据文档(Laravel 5.3 Scout Documentation)将用户记录导入搜索驱动程序。我不断收到[BadMethodCallException]
调用未定义的方法Illuminate \ Database \ Query \ Builder :: makeAllSearchable() 作为错误。为什么我得到这个错误?我在我的用户控制器中包含了可搜索的特征,并将侦察类添加到了我的应用程序/配置提供程序数组中,所以我正在努力了解为什么该方法不存在...BadMethodCallException:调用未定义的方法Illuminate Database Query Builder :: makeAllSearchable()

回答

2

您不应将特征添加到控制器,但对模型。所以你的情况到App \ user.php的

<?php 

namespace App; 

use Laravel\Scout\Searchable; 
use Illuminate\Database\Eloquent\Model; 

class User extends Model 
{ 
    use Searchable; 
} 
+0

我真的很惭愧自己没有遵循这样简单的指示......不仅如此,但为什么地球上的可搜索特征甚至会在控制器中?在一天内编码时间太长。非常感谢。 –

2

喜欢的Jakub说,你要的检索特点添加到您的用户模式,不给控制器。

如果您在模型上使用toSearchableArray(),请不要忘记在数组中包含id列,否则它将无法工作。

您也可以评论toSearchableArray()函数,导入现有用户,然后将其添加回来。

+0

谢谢你:) –

相关问题