经过几天的搜索,我决定来这里询问。
我以前使用过该软件包,并且从字面上复制粘贴了代码,但在该项目中仍然无法使用。
我正在尝试使用Elasticquent
中的Elasticsearch
的laravel 5.2
包。
我得到的错误是:Invalid argument supplied for foreach()
这是在/vendor/elasticsearch/elasticsearch/src/Elasticsearch/ClientBuilder.php
行上的111
文件中引发的。
每当我尝试使用该软件包时都会发生这种情况(即:使用search
,addAllToIndex
等)。
据我所知,配置为null,所以elasticquent
中有一个我错过的设置吗?
有想法该怎么解决这个吗?
编辑
我的config/elasticquent.php
文件(与`vendor / elasticquent / elasticquent / src / config / elasticquent.php完全相同):
<?php
return array(
/*
|--------------------------------------------------------------------------
| Custom Elasticsearch Client Configuration
|--------------------------------------------------------------------------
|
| This array will be passed to the Elasticsearch client.
| See configuration options here:
|
| http://www.elasticsearch.org/guide/en/elasticsearch/client/php-api/current/_configuration.html
*/
'config' => [
'hosts' => ['localhost:9200'],
'retries' => 1,
],
/*
|--------------------------------------------------------------------------
| Default Index Name
|--------------------------------------------------------------------------
|
| This is the index name that Elastiquent will use for all
| Elastiquent models.
*/
'default_index' => 'my_custom_index_name',
);
编辑2
结果到
curl -XGET localhost:9200
:{
"name" : "Mac Gargan",
"cluster_name" : "elasticsearch",
"version" : {
"number" : "2.3.2",
"build_hash" : "b9e4a6acad4008027e4038f6abed7f7dba346f94",
"build_timestamp" : "2016-04-21T16:03:47Z",
"build_snapshot" : false,
"lucene_version" : "5.5.0"
},
"tagline" : "You Know, for Search"
}
编辑3
对于任何遇到此问题的人,我都无法解决。我不得不使用另一个包
mustafaaloko/elasticquent5
找到here 最佳答案