我在 Rails 4 上启动了一个新应用程序,我注意到默认情况下 JSON 渲染的实现方式似乎发生了重大变化,但我在任何地方都找不到它,所以我想知道是否有人可以给我一些见解关于(1)API 是否实际发生了变化,以及(2)我如何获得我需要的行为(即旧行为)。
特别是,我看到的是,在 Rails 3 中
@answer.as_json
...会回来...
{
id: 1,
body: "lorem ipsum..."
....
}
在 Rails 4 中,似乎返回的是相同的方法:
{
'answer':
{
id: 1,
body: "lorem ipsum..."
...
}
}
其他人可以确认这种行为已经改变吗?有没有办法让旧的行为恢复到没有覆盖每个模型的 as_json ?
这个新实现使得返回包含多个模型的 JSON 响应变得更加麻烦(现在要么必须通过控制器操作中的“render :json ...”调用中的哈希合并来完成,要么通过覆盖 as_json 来完成)。