symfony4: нет расширения, способного загрузить конфигурацию для "doctrine_mongodb"
У меня есть проблема, чтобы настроить доктрину ODM с Symfony4.1
Я получил сообщение об ошибке при обновлении композитора, кеш: очистить подкоманду
Не существует расширения, способного загрузить конфигурацию для "doctrine_mongodb" (в /home/thomas/Documents/dev/blade/vm_api/config/packages/doctrine.yaml). Искал пространство имен "doctrine_mongodb", нашел "framework"
Мой composer.json выглядит нормально
{
"type": "project",
"license": "proprietary",
"require": {
"php": "^7.1.3",
"ext-ctype": "*",
"ext-iconv": "*",
"alcaeus/mongo-php-adapter": "^1.1.5",
"doctrine/mongodb-odm": "^1.2.4",
"doctrine/mongodb-odm-bundle": "^3.5",
"mongodb/mongodb": "1.3.2",
"symfony/console": "*",
"symfony/flex": "^1.1",
"symfony/framework-bundle": "*",
"symfony/yaml": "*"
},
"require-dev": {
"symfony/dotenv": "*"
},
"config": {
"preferred-install": {
"*": "dist"
},
"sort-packages": true
},
"autoload": {
"psr-4": {
"App\\": "src/"
}
},
"autoload-dev": {
"psr-4": {
"App\\Tests\\": "tests/"
}
},
"replace": {
"paragonie/random_compat": "*",
"symfony/polyfill-ctype": "*",
"symfony/polyfill-iconv": "*",
"symfony/polyfill-php71": "*",
"symfony/polyfill-php70": "*",
"symfony/polyfill-php56": "*",
"symfony/symfony": "*"
},
"scripts": {
"auto-scripts": {
"cache:clear": "symfony-cmd",
"assets:install %PUBLIC_DIR%": "symfony-cmd"
},
"post-install-cmd": [
"@auto-scripts"
],
"post-update-cmd": [
"@auto-scripts"
]
},
"conflict": {
"symfony/symfony": "*"
}
}
И файл конфигурации с "нормальными" параметрами
parameters:
# Adds a fallback DATABASE_URL if the env var is not set.
# This allows you to run cache:warmup even if your
# environment variables are not available yet.
# You should not need to change this value.
env(DATABASE_URL): ''
doctrine_mongodb:
#default_commit_options: ~
default_database: "%env(DATABASE_NAME)%"
connections:
default:
server: "%env(DATABASE_HOST)%"
options:
username: "%env(DATABASE_USER)%"
password: "%env(DATABASE_PASSWORD)%"
authSource: "%env(DATABASE_AUTH_SOURCE)%"
ssl: "%env(DATABASE_SSL%"
replicaSet: "%env(DATABASE_REPLICA_SET)%"
document_managers:
default:
mappings:
DocumentBundle:
type: annotation
dir: Document/
Я новичок с 4.1, и, возможно, я сделал что-то не так
заранее спасибо
0 ответов
Ваш пакет должен быть включен автоматически, если вы используете Flex. В противном случае вам нужно будет вручную включить пакет, добавив следующую строку в файл config/bundles.php вашего проекта.
// config/bundles.php
<?php
return [
// ...
Doctrine\Bundle\MongoDBBundle\DoctrineMongoDBBundle::class => ['all' => true],
];