Symfony 3.2 FOSElasticSearch 5.x
Я пытаюсь установить пакет FOSElasticSearch (используя composer) в Symfony 3.2
Это мой файл composer.json:
{
"name": "CompanyName/standard-edition",
"license": "MIT",
"type": "project",
"description": "The \"Symfony Standard Edition\" ",
"minimum-stability": "stable",
"autoload": {
"psr-4": {
"": "src/"
},
"classmap": ["app/AppKernel.php", "app/AppCache.php"]
},
"autoload-dev": {
"psr-4": {
"Tests\\": "tests/"
},
"files": ["vendor/symfony/symfony/src/Symfony/Component/VarDumper/Resources/functions/dump.php"]
},
"require": {
"php": ">=7.1.0",
"beberlei/DoctrineExtensions": "^1.0@dev",
"dflydev/apache-mime-types": "1.*",
"doctrine/doctrine-bundle": "^1.6",
"doctrine/doctrine-cache-bundle": "^1.2",
"doctrine/doctrine-migrations-bundle": "^1.2",
"doctrine/orm": "^2.5",
"egeloen/google-map-bundle": "^3.0@dev",
"friendsofsymfony/jsrouting-bundle": "^2.2",
"friendsofsymfony/elastica-bundle": "5.*",
"hwi/oauth-bundle": "0.5.*",
"incenteev/composer-parameter-handler": "^2.0",
"knplabs/knp-menu-bundle": "~2",
"leafo/scssphp": "v0.6.3",
"php-http/guzzle6-adapter": "^1.1",
"php-http/httplug-bundle": "^1.1",
"phpoffice/phpword": "^0.13",
"pulse00/monolog-parser": "*",
"rashid2538/php-htmldiff": "dev-master",
"requestlab/vimeo-bundle": "dev-master",
"sensio/distribution-bundle": "^5.0",
"sonata-project/classification-bundle": "^3.2",
"sonata-project/media-bundle": "^3.2",
"sp/bower-bundle": "dev-master#0163011a6f46e077556653dd32d6b659375bad8c",
"symfony/assetic-bundle": "~2.3",
"symfony/cache": "3.2.*",
"symfony/framework-bundle": "~2.8|~3.0|~3.1|~3.2",
"symfony/monolog-bundle": "^3.0.2",
"symfony/swiftmailer-bundle": "^2.3.10",
"symfony/symfony": "3.2.*",
"twig/extensions": "^1.3"
},
"require-dev": {
"sensio/generator-bundle": "^3.0",
"symfony/phpunit-bridge": "^3.0",
"symfony/var-dumper": "3.2.*"
},
"scripts": {
"symfony-scripts": [
"Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget"
],
"post-install-cmd": [
"@symfony-scripts",
"Sp\\BowerBundle\\Composer\\ScriptHandler::bowerInstall"
],
"post-update-cmd": [
"@symfony-scripts",
"Sp\\BowerBundle\\Composer\\ScriptHandler::bowerUpdate"
]
},
"config": {
"platform": {
"php": "7.2.0"
},
"sort-packages": true
},
"extra": {
"symfony-app-dir": "app",
"symfony-bin-dir": "bin",
"symfony-var-dir": "var",
"symfony-web-dir": "web",
"symfony-tests-dir": "tests",
"incenteev-parameters": {
"file": "app/config/parameters.yml"
},
"branch-alias": {
"dev-master": "3.2-dev"
}
}
Когда я изменяю эту строку в файле composer.json, чтобы установить последнюю версию
"friendsofsymfony/elastica-bundle": "5.*",
я получаю эту ошибку https://pastebin.com/CaYJYdFB
в
"friendsofsymfony/elastica-bundle": "*",
тогда я получаю FOSElasticBundle версии 4.1.2, но проблема с этой версией заключается в том, когда я пытаюсь заполнить ее, используя
php bin/console fos:elastic:populate
я получаю эту ошибку
Content-Type header [application/x-www-form-urlencoded] is not supported
Люди с такой же проблемой рекомендуют перейти на FosElasticBundle версии 5. *.
fos_elastica:
клиенты: по умолчанию: {хост: localhost, порт: 9200 } индексы: приложение: типы: элемент: сопоставления: заголовок: ~ автор: ~ категории: ~ описание: ~ теги: ~ местоположение: ~
persistence:
driver: orm
model: EBMB\BaseBundle\MediaItem\Model\Item
provider: ~
listener: ~
finder: ~
Вот также моя конфигурация Elasticsearch в config.yml