gpt4 book ai didi

ruby-on-rails - HAML 使用哈希火箭而不是冒号渲染 as_json

转载 作者:太空宇宙 更新时间:2023-11-03 17:37:52 27 4
gpt4 key购买 nike

我正在尝试将 ruby​​ 哈希呈现为 haml 中的 json 字符串。 (! 告诉 haml 不要转义输出)

! { :name => "Paul" }.as_json 

我期待这个输出

{ "name":"Paul" }

但我得到的是哈希火箭而不是冒号

{ "name"=>"Paul" }

如何使 haml 或 as_json 输出冒号而不是属性/值分隔符的哈希火箭?

最佳答案

as_json 本质上是一种允许您指定对象在 JSON 中的表示方式的方法。它实际上并没有返回 JSON 编码的字符串。为此需要 to_json

这样做的原因是你可能想决定你的模型在 JSON 编码时返回哪些字段(比如,从用户模型中删除密码),但是通过使用 to_json,你不再有能够将其嵌套在另一个 JSON 对象中,因为它已成为编码和转义字符串。

to_json 会调用as_json,并对返回值进行编码。

引用自: http://jonathanjulian.com/2010/04/rails-to_json-or-as_json/

关于ruby-on-rails - HAML 使用哈希火箭而不是冒号渲染 as_json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11275714/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com