rails active_model_serializers

  1. 当使用了active_model_serializers后在render 中就可以使用root参数 用于指定返回的json数据的根,注意如果返回的数据是数组此时 root不起作用
render json: User.all, root: 'users'

{
  'users': [
  ]
}

2 提供了三种适配器 默认的是attributes,还有json_api 和 json。不同适配器返回不同格式的数据 推荐使用 json
attributes 不包含root
json 如果没有指定root则 以model的复数作为返回数据的key

{
   "users": [
       {
           "id": 1,
           "phone": "1506914xxxx"
       },
       {
           "id": 2,
           "phone": "1506914xxxx"
       }
}

json_api返回的数据格式如下

    "data": [
        {
            "id": "1",
            "type": "users",
            "attributes": {
                "phone": "1506914xxx"
            }
        }
}

你可能感兴趣的:(rails active_model_serializers)