我在此https://github.com/Exercise/FOQElasticaBundle#readme之后设置FOQElasticaBundle
Elastica和FOQElasticaBundle都使用git子模块安装。

当我尝试应用程序/控制台时,它给出了错误The autoloader expected class "Elastica_Client" to be defined in file "/path/to/project/../vendor/elastica/lib/Elastica/Client.php". The file was found but the class was not in it, the class name or namespace probably has a typo.
我发现FOQ尝试在vendor / elastica / lib / Elastica / Client.php中加载Elastica_Client类,但自名为Client的类以来未发现任何内容。

我随机浏览了elastica repo https://github.com/ruflin/Elastica/blob/v0.18.6.0/lib/Elastica/Client.php,发现
以前称为Elastica_Client的类。

问题是

  • 是FOQElasticaBundle已过时,与当前的Elastica库相对吗?
  • 还是我的自动加载出现问题。 ps:我正在使用 Composer 自动加载器?

  • app / autoload.php
    $loader->add('Elastica', __DIR__.'/../vendor/elastica/lib');
    $loader->add('FOQ', __DIR__.'/../vendor/bundles');
    

    最佳答案

    FOQElasticaBundle安装步骤适用于Symfony 2.0

    在SF2.1中,您必须使用composer安装 bundle 软件,因此只需将其添加到composer.json文件中即可:
    "ruflin/elastica": "0.19.8" here an example

    然后运行以下命令:
    composer update
    最后一步是:
    composer dumpautoload
    最后一步为您生成自动加载文件

    10-08 06:40