我有两个模型发布和评论
class Post < ActiveRecord::Base
has_many :comments
end
class Comment < ActiveRecord::Base
belongs_to :post
end
我如何获得所有带有评论的帖子,如下面的json回复:
{
"posts": [
{
"name": "Ruby on Rails",
"comments": [
{
"desc": "awesome"
}
]
},
{
"name": "Java",
"comments": [
{
"desc": "Thanks"
},
{
"desc": "very useful"
}
]
}
]
}
答案 0 :(得分:2)
试试这个,在app / views / posts /中创建一个index.json.jbuilder, 并将以下代码添加到其中
json.posts @posts do |post|
json.name post.name
json.comments post.comments do |comment|
json.desc comment.desc
end
end
答案 1 :(得分:0)
使用activemodel Activemodel Serializers。还可以查看这个railscasts视频,它可以让您对activemodel序列化器以及如何使用它Railscasts-activemodel serializers有一个很好的了解。 希望我能帮到你。