私も同様の質問をしましたが問題は解決しませんでした。Symfony2:存在しないパラメータを要求しました
私はOpenshiftでSymfony2アプリケーションをデプロイしています。それは私のWindows 10ラップトップ上でうまく動作しますが、私はOpenshiftで次のerror messageを取得しています:
Fatal error: Uncaught exception 'Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException'
with message 'You have requested a non-existent parameter "database_path".
Did you mean one of these: "database_host", "database_port", "database_name", "database_user"?'
in /var/lib/openshift/55eed4837628e1199f0000bb/app-root/runtime/repo/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php:106 Stack trace: #0
/var/lib/openshift/55eed4837628e1199f0000bb/app-root/runtime/repo/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php(248):
Symfony\Component\DependencyInjection\ParameterBag\ParameterBag->get('database_path') #1 [internal function]:
Symfony\Component\DependencyInjection\ParameterBag\ParameterBag->Symfony\Component\DependencyInjection\ParameterBag\{closure}(Array) #2
/var/lib/openshift/55eed4837628e1199f0000bb/app-root/runtime/repo/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php in
/var/lib/openshift/55eed4837628e1199f0000bb/app-root/runtime/repo/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php on line 106
私config.yml
は次のとおりです。
imports:
- { resource: parameters.yml }
- { resource: security.yml }
- { resource: services.yml }
...
doctrine:
dbal:
driver: pdo_sqlite
charset: UTF8
path: "%kernel.root_dir%/../%database_path%"
...
マイparameters.yml
は次のとおりです。
parameters:
database_driver: pdo_sqlite
database_host: localhost
database_port: null
database_name: demo.db
database_user: root
database_password: null
database_path: /data/demo.db
...
と私config_prod.yml
は:
私は間違っていますか?
アップデートは
私は私のconfig.yml
に変更されました:
path: "%kernel.root_dir%/../data/demo.db"
と問題がなくなっていますが、私はなぜ知りません!
dev環境でも例外が発生しましたか? 'cache:clear'を実行しましたか? – Federkun
'app_dev.php'を実行してもこの問題はありませんでした。私はちょうど私のopenhiftアプリケーションにログインし、 'php app/console cache:clear --env = prod'を実行しました。私はコマンドラインから全く同じエラーを受け取っています... – JVerstry
常にコンポーザーをインストールしていますが、symfonyはconfig.yml.distから新しいconfig.ymlを再生成します。あなたのconfig.yml.distを更新しましたか? openshift SSHから、config.ymlが大丈夫かどうかを確認してください。 '$ cat $ OPENSHIFT_REPO_DIR/app/config/parameters.yml' – felipsmartins