在Rails中渲染JSON时如何添加元素/字段/列?

时间:2015-07-27 22:29:58

标签: ruby-on-rails json render

假设您有一个名为Widget的模型,其中包含:id:name

在您的Widget #index端点中,您希望渲染json中的所有小部件,但是...您还希望为每个不属于名为foobar的模型的记录包含另一个值。所以你希望最终结果看起来像这样......

{
    "widgets": [
        {
            "id":, 1,
            "name": "widgy",
            "foobar": true
        },
        {
            "id":, 2,
            "name": "gadgy",
            "foobar": false
        }
    ]
}

如何编辑以下代码以允许这样的内容?

widgets = Widget.all
render json: widgets

1 个答案:

答案 0 :(得分:0)

根据您正在运行的Rails版本,您可以选择使用active_model_serializers或简单的jbuilder视图。

Rails 4已包含jbuilder gem,因此您无需在Gemfile中包含任何特殊内容。

干杯!