【发布时间】:2017-01-10 07:12:36
【问题描述】:
我正在使用 REST API 调用 (get) 检索我的所有项目并返回一个 json,这是控制器中的代码:
class PeopleController < ApplicationController
def index
@people = Person.all
render json: @people
end
end
它正在返回,但开头有一个“数据”字段:
{"data":
[
{"id":"1","type":"people","attributes": {"name":"survivorTest","age":"55"}},
{"id":"2","type":"people","attributes": {"name":"test666","age":"44"}},
{"id":"3","type":"people","attributes": {"name":"test666","age":"6666"}}
]
}
这是我的路线:
Rails.application.routes.draw do
resources :people
end
如何只返回每一行的属性?
【问题讨论】:
-
你是否在你的应用中设置了 ActiveRecord::Base.include_root_in_json = "data"?
-
我不是,应该在哪里设置?
-
你在使用ActiveModelSerializers吗?该 JSON 看起来与 JSON API specification 格式完全一样。如果您使用的是 AMS,则应选择另一个适配器。 stackoverflow.com/questions/33620859/…
-
就是这样,我正在使用 AMS,并且我已经制作了我相信的覆盖 AMS 的初始化程序配置。现在可以使用了,谢谢!
-
很好,您可以自己发布问题的答案,以帮助遇到同样问题的其他人(并获得一些代表)。
标签: ruby-on-rails