0

我将如何在 rails 3.2 中将元数据添加到 json 响应中?有没有办法访问模型元数据并将其包括在内?IE。字段名称和数据类型。

类似于以下内容:

{
"metaData":{
  "columns":[
     {
        "dataIndex":"id",
        "text":"User ID",
        "type":"integer"
     },
     {
        "dataIndex":"name",
        "text":"User Name",
        "type":"string"
     },
     {
        "dataIndex":"birthday",
        "format":"dd-mmm-yy",
        "text":"Birthday",
        "type":"datetime"
     }
  ]
},
"data":[
  {
     "id":1,
     "name":"Queen Elizabeth",
     "birthday":"1533-09-07T06:33:39Z"
  },
  {
     "id":2,
     "name":"Queen Elizabeth II",
     "birthday":"1926-04-21T02:40:00Z"
  }
]
}
4

2 回答 2

1

您的模型类将有一个columns返回列对象数组的方法。您可以从中提取大部分元数据:

metas = Model.columns.map { |c| c.as_json.slice('name', 'type') }

然后您可以将其添加到您的回复中。

于 2012-05-20T03:23:09.347 回答
0

我可能会用类似jbuilder的东西来构建它

关于如何使用它有一个很好的 railscast 插曲http://railscasts.com/episodes/320-jbuilder

于 2012-05-20T07:07:01.310 回答