2

我正在尝试返回 ActiveRecord 的 JSON 表示,但不是让 JSON 字符串包含模型的键的列名,而是希望它每列显示不同的内容。有没有办法做到这一点?这是我的示例行

record.as_json(root: false, :only => [:message, :user])

我基本上希望它返回消息和用​​户列,但我想在它得到它们时称它们为别的东西。

4

2 回答 2

1

我认为你过于复杂了。您只需要两列,那么为什么不手动完成呢?

def some_controller
    #...
    json = {
        :new_name_for_message => r.message,
        :new_name_for_user    => r.user
    }
    render :json => json, :status => :ok
end

只需构建一个两元素哈希并将其交给 JSON 渲染系统。

于 2012-04-24T19:49:29.693 回答
1
record.as_json(root: false, :only => [:user], :methods => [:message_html])

并在记录中定义该方法。

于 2012-04-24T18:58:19.510 回答