我有一个视图文件photo_feed.html.erb,使用以下内容打印我需要的内容:
<% @photo_feed.each do |feed| %>
<%= feed.id %>
<%= feed.username %>
<%= feed.photo_filename %>
<%= feed.comments_count %>
<%= feed.comments.map{|x| [x.username, x.comment]} %>
<% end %>
可行,并为每张照片输出数组数组中的注释。
现在我的目标是使用jbuilder在json中输出它,我无法弄清楚如何打印数组。
json输出应该类似于:
[{ “ID”:1, “用户名”: “鲍勃”, “photo_filename”: “img.jpg”, “comments_count”:2,[[ “用户名”: “泰德”, “注释”:”你好 特德,你 朋克 “] [” 用户名。 “:” 卡尔”, “注释”: “愤怒”]]},{ “ID”:2 “用户名”: “LISA”, “photo_filename”: “img2.jpg”, “comments_count”:1,[[ “用户名”: “明白了”, “注释”: “嗒嗒”]]}
所以我的问题是:如何在json.jbuilder文件中打印关联的映射数据?
答案 0 :(得分:0)
应该是这样的:
json.array!(@photo_feed) do |feed|
json.extract! feed, :id, :username, :photo_filename, :comments_count
json.comments feed.comments do |json, comment|
json.(comment, :username, :comment)
end
end
查看此railscast - http://railscasts.com/episodes/320-jbuilder