将嵌套集合添加到同一模型的Rabl中

时间:2014-04-09 19:40:31

标签: ruby-on-rails ruby ruby-on-rails-3 rabl

我有一个兔子:

collection @posts.sort_by { |p| p["title"] }
attributes :id, :name, :title

这给了我一个像这样的json结果:

[{ "id":9, "name":"whatever", "title":"whatever" }]

现在我还想在我的收藏中添加一个'子集合'相关帖子,具有相同的属性 - 像这样:

[{ "id":9, "name":"Sports", "title":"whatever", 
  "related_posts": [
    { "id":10, "name":"Other sports", "title":"whatever" }
  ] 
}]

假设我的Post模型已经有一个related_posts属性,我怎么能在那里得到它?

1 个答案:

答案 0 :(得分:0)

请试试这个:

collection @posts.sort_by { |p| p["title"] }
attributes :id, :name, :title
child(:related_posts) { attributes :id, :name, :title }

希望它有所帮助。