2
我正在使用Heroku託管我的Symfony 3應用程序。我將切換到需要我設置自定義證書的新數據庫提供程序。如何在Symfony中的config.yml中設置配置參數而不創建服務
我不想在版本控制下存儲證書,因此我決定編寫一個新的命令,從設置爲環境變量的URL下載部署證書文件。
要讀取環境變量,我在composer.json
中使用incenteev-parameters
,然後在parameters.yml
處設置適當的值。但據我所知,無法直接從parameters.yml
讀取此值,因此我必須在config.yml
中使用我的新url參數parameters.yml
,但這需要我創建一項新服務。
我只是想從我的新命令中讀取這個新的url參數,以便我可以在部署中下載我的證書。
只有當參數已被定義爲服務,但將該命令定義爲服務纔有效。我會盡力回覆你。 – tatsuhirosatou
您無法將參數定義爲服務。您應該在parameters.yml中定義您的參數值,並使用我的答案中的某種建議方式從命令類中獲取它。請看看關於參數的Symfony文檔:http://symfony.com/doc/current/service_container/parameters.html –
對不起,我不是指將參數定義爲服務。我的意思是你需要定義一個使用給定參數的服務。 '$ this-> getContainer() - > getParameter('your_parameter_key');'僅適用於給定服務使用的參數。用'$ this-> getContainer() - > getParameter('your_parameter_key');''不能在'config.yml'中使用'parameter.yml'中的某些服務來直接訪問'parameters.yml'上的內容。我用你的第二個建議,它的工作。 – tatsuhirosatou