2014-10-20 160 views
1

這是我的用例:我們使用Yaml來保存我們所有的環境配置。 我們有一個保存每個環境配置的conguration.yml和一個保存特定本地配置的parameters.ymlYaml:變量的默認值

parameters.yml

value1: abc 
value2: ~ 

configuration.yml

service: 
    arg1: %value1% 
    arg2: %value2% 

我的問題:是我有辦法可以去掉value2: ~線,而無需解析來自Yaml的錯誤? configuration.yml如果沒有定義value2,我們可以定義一種默認值?

+0

我知之甚少YAML,但這個問題似乎在暗示,如果你離開它,它會被intepreted爲空:http://stackoverflow.com/questions/6745051/ play-framework-how-can-i-make-play-accept-null-values-in-yaml-files – thatidiotguy 2014-10-20 16:54:55

+0

爲什麼你需要刪除value2? – SenseException 2014-10-20 19:53:55

+0

@SenseException,否則一個參數未找到錯誤拋出 – Maz 2014-10-23 12:42:58

回答

0

不,您只能在parameters.yml.dist文件中指定默認值。此功能僅適用於symfony 2.3,需要composer install來詢問/更新配置。

features annuncement進一步閱讀

+0

'作曲家安裝'似乎並沒有修改'parameters.yml'在我身邊。我發現這個https://github.com/Incenteev/ParameterHandler可以完成這項工作,但是你確定symfony能夠在本地處理這個問題嗎? – Maz 2014-10-23 12:44:53

+0

是的,'composer install'進程的post-hook運行只管理「忽略的參數」的ParameterHandler組件,所以如果你沒有在'parameters.yml'中指定一個鍵,它將把鍵放入它來自'parameters.yml.dist' – Matteo 2014-10-23 12:56:21

+0

嗨@Maz請考慮upvote我的答案,如果你覺得它有用 – Matteo 2015-01-22 08:37:20