【问题标题】:Escaping colons in YAML在 YAML 中转义冒号
【发布时间】:2013-01-30 03:51:06
【问题描述】:

有人知道如何在 YAML 中转义冒号吗?我的 yml 中的关键是 带有端口号的域,但 yml 文件不适用于此设置:

###BEGIN
production:
### THIS IS THE ONE I'm HAVING TROUBLE WITH ###
8.11.32.120:8000: GoogleMapsKeyforThisDomain
exampledomain.com: GoogleMapsAPIKeyforThatDomain

development:
 GoogleMapsAPIKeyforDevelopmentDomain
###END

我正在使用一个名为 YM4R 的谷歌地图插件,它使用 .yml 文件 根据我的应用所在的位置选择不同的 Google Maps API 密钥 正在托管...

所以,我正在尝试制作8.11.32.120:8000 the key。知道怎么做 这? (如果你关心,它在 gmaps_api_key.yml 文件中)

【问题讨论】:

标签: escaping yaml delimiter


【解决方案1】:

您需要在遇到问题的键周围加上引号。即:

"8.11.32.120:8000": GoogleMapsKeyforThisDomain

【讨论】:

  • 使用引号,我们不能用其他方式吗?
  • 我还没有遇到任何其他的方法,抱歉。
  • 我在 HTML 实体方面取得了成功(例如“:”)
  • 只是出于好奇:为什么你想要另一种方式?
  • 因为这不起作用:- sed -i "s/driver: .*/driver: pdo_$DB/" etc/config.yaml
【解决方案2】:

以另一种方式回答列表项的评论,例如:

- sed -i "s/driver: .*/driver: pdo_$DB/" etc/config.yaml

就是把它们写成:

- >-
  sed -i "s/driver: .*/driver: pdo_$DB/" etc/config.yaml

或作为:

- 'sed -i "s/driver: .*/driver: pdo_$DB/" etc/config.yaml'

【讨论】:

    猜你喜欢
    • 2021-05-20
    • 1970-01-01
    • 1970-01-01
    • 2017-01-27
    • 2011-11-12
    • 1970-01-01
    • 2017-06-04
    • 2015-08-21
    相关资源
    最近更新 更多