ruby-on-rails - 如何将符号转换为字符串(即带前导:) ruby to_yaml
问题描述
我试图:
从我的 YAML 输出中删除前导。这是代码和我在下面所做的:
模型/attribution_channel.rb
DEFAULT_BONUS_CONFIG = {
sign_up: {
currency: 'ngn',
type: 'flat',
amount: 1000
},
visit: {
currency: 'ngn',
type: 'flat',
amount: 5
}
}
查看/form.slim.html
AttributionChannel::DEFAULT_BONUS_CONFIG.to_yaml
输出:
要从我的输出中删除YAML 分隔符 ---和前导 : 在键中,这是我所做的:
AttributionChannel::DEFAULT_BONUS_CONFIG.to_yaml.gsub("---\n", '').sub(":", '')
..但该.sub(":", '')
部分仅删除:
了第一个前导的:
。
如何:
从我的 YAML 输出中删除前导?任何帮助表示赞赏?下面是我想要的:
sign_up:
currency: ngn
type: flat
amount: 1000
visit:
currency: ngn
type: flat
amount: 5
解决方案
您需要将键作为字符串来跳过:
生成
require 'active_support/core_ext/hash/keys'
require 'yaml'
DEFAULT_BONUS_CONFIG.deep_stringify_keys.to_yaml.gsub("---\n", '')
=> "sign_up:\n currency: ngn\n type: flat\n amount: 1000\nvisit:\n currency: ngn\n type: flat\n amount: 5\n"
推荐阅读
- google-play - 在 Data Studio 中显示 AppStore 和 GooglePlayStore 应用程序指标的最佳方式
- c# - 每次抽奖有很多权利
- python - 是否有可能以两种方式拥有相关领域?
- python - 如何将列表存储在文本文件中?
- json - 从laravel中的json数组获取数据
- sql - 从关闭的文件中获取最后一行和最后一列或 UsedRange(并保持关闭 - ADO)
- http - 诱导 Julia 任务完成
- python - 批处理文件中字符串转义中的空格
- macos - WKWebViewDataStore 泄漏
- python-3.x - 更改 ipython 小部件切换按钮的布局