我正在使用 Rails 应用程序作为 JSON API 服务。有一个字段可以容纳一个或两个字符串。下面是我如何在 .xml.builder 文件中创建此 JSON 元素,从扁平哈希中获取信息:
if hash['advertisements']
hash['advertisements'].each do |ad|
xml.advertisements(ad)
end
end
当哈希中有两个字符串时,得到的JSON是一个数组:
"advertisements": [
"ad1.png",
"ad2.png"
]
但是当只有一个字符串时,元素只是一个字符串:
"advertisements": "ad1.png"
有没有一种方法可以强制 XML 构建器生成一个 JSON 数组,即使哈希中只有一个字符串?另请注意,如果原始哈希中没有广告,则不应呈现任何 json 数组。
最佳答案
我认为最好和更简单的方法是使用 JSON 构建器!
gem install json
第二个想法是使用您的 ORM 序列化程序。这样您就不必处理所有用例。
关于ruby-on-rails - 如何使用 Rails XML Builder 创建单个元素 JSON 数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5433715/