4

我有一个有很多帖子的用户模型。我试图在 rabl 集合中呈现帖子。

collection @posts
attributes :title, :created_at

渲染 json 集合的默认 rabl 格式是 {'posts': ['post':{}, 'post':{}]}. 例如,我想要完成的是将“post”键更改为动态值 post id,以便我的格式看起来像这样{'posts':[1:{}, 2:{} ]}。正在尝试使用 Rabl 的配置,但我发现的唯一一件事是如何使用

Rabl.configure do |config|
  config.include_json_root = false
end
4

1 回答 1

8

我不认为 RABL 目前本机支持这一点,但由于 RABL 只不过是 ruby​​ 代码库之上的语法糖,因此您应该能够通过使用循环自己做到这一点。

例如(我没有试过这个,但你应该得到一般的要点):

collection @posts

@posts.each do |post|
  node(post.id.to_sym) {{ title: post.title, created_at: post.created_at }}
end
于 2012-06-21T14:57:26.303 回答