Ich habe ähnliche Fragen zu SO überprüft, aber sie haben mein Problem nicht gelöst.Symfony2: Sie haben einen nicht vorhandenen Parameter angefordert
Ich verwende eine Symfony2-Anwendung auf OpenShift. Es funktioniert gut auf meinem Windows-10-Laptop, aber ich bin immer die folgende error message auf Openshift:
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
Mein config.yml
ist:
imports:
- { resource: parameters.yml }
- { resource: security.yml }
- { resource: services.yml }
...
doctrine:
dbal:
driver: pdo_sqlite
charset: UTF8
path: "%kernel.root_dir%/../%database_path%"
...
Mein parameters.yml
ist:
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
...
und meine config_prod.yml
ist:
imports:
- { resource: config.yml }
...
Was mache ich falsch?
path: "%kernel.root_dir%/../data/demo.db"
und das Problem ist weg, aber ich weiß nicht, warum:
aktualisieren
Ich habe meine config.yml
geändert!
Haben Sie die Ausnahme auch in der Entwicklungsumgebung erhalten? Hast du 'cache: clear' ausgeführt? – Federkun
Ich hatte dieses Problem nicht bei der Ausführung von 'app_dev.php'. Ich habe gerade ssl in meine OpenShift-Anwendung eingeloggt und führte 'php app/console cache: clear --env = prod'. Ich bekomme genau den gleichen Fehler von der Kommandozeile ... – JVerstry
Immer Composer-Installation läuft, symfony regeneriert eine neue config.yml aus config.yml.dist. Haben Sie Ihre config.yml.dist aktualisiert? Von OpenShift SSH überprüfen, ob config.yml in Ordnung ist. '$ cat $ OPENSHIFT_REPO_DIR/app/config/parameters.yml' – felipsmartins