Ope*_*erX 145 alias yaml database-connection ruby-on-rails cross-reference
到目前为止,我只使用了database.yml,每个参数都显式调出,在下面的文件中使用了一些我不理解的字符.每行和符号(&,*,<<)的含义是什么,我如何阅读此文件?
development: &default
adapter: postgresql
database: dev_development
test: &test
<<: *default
database: test_test
cucumber:
<<: *test
production:
<<: *default
database: test_production
Run Code Online (Sandbox Code Playgroud)
pau*_*kul 172
该&标志为节点的别名(在你的榜样&default别名发展节点作为"默认")和*引用名为"默认"的别名节点.所述<<:插入该节点的内容.
请允许我在此引用YAML规范:
重复节点(对象)首先由锚点标记(用&符号标记 - "&"),然后别名(用星号 - "*"引用).
所以你的例子的一部分
test: &test
<<: *default
Run Code Online (Sandbox Code Playgroud)
实际上扩展到
test: &test
adapter: postgresql # from the "default" alias
database: dev_development # from the "default" alias
Run Code Online (Sandbox Code Playgroud)
同时使别名"test"下的"test"节点可用.看看YAML规范 - 2.2结构了解更多细节(或者如果你甚至需要moar docs ++:3.2.2.2.锚和别名)
它们是一种参考环境的方法,而无需一遍又一遍地重复相同的设置(干燥)。
test: &test
<<: *default
Run Code Online (Sandbox Code Playgroud)
&test创建对这些特定设置的引用。
<<: *default说使用默认设置进行测试
cucumber:
<<: *test
Run Code Online (Sandbox Code Playgroud)
现在我们知道cucumber我们想要使用 中的设置test。
| 归档时间: |
|
| 查看次数: |
32078 次 |
| 最近记录: |