我有一个示例 yaml
文件 (abc.yaml
),如下所示:
entity1:
condition: "created_at >= #{Date.today - 3.months}"
我想从 Ruby 中的 YAML
读取这个条件:
"created_at >= 2015-03-02"
但是当我这样做的时候
YAML.load_file('abc.yaml')["entity1"]["condition"]
我得到:
"created_at >= \#{Date.today - 3.months}"
请让我知道如何解决这个问题。
最佳答案
更安全的选择是只转换预定格式的已知数据。或者使用一些很酷的东西,比如 settingslogic https://github.com/settingslogic/settingslogic .它使用 ERB 样式的格式来加载设置,因此您可以获得一些内置的安全性。
例如:
defaults: &defaults
cool:
saweet: nested settings
neat_setting: 24
awesome_setting: <%= "Did you know 5 + 5 = #{5 + 5}?" %>
关于ruby-on-rails - YAML 中的 Ruby 可执行文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30588488/