Rails ajax返回模型no-db字段

时间:2014-08-19 02:47:33

标签: ruby-on-rails ruby

我的应用程序基于Rails 4构建。 我的模型mem包含自定义字段realname

class Mem < ActiveRecord::Base
    def realname
       'hello' 
    end
end

现在,我发布一个ajax请求表单客户端以获取mems列表,包括字段realname

def
   render json: {Mem.all}
end

但是返回的数据不包括realname,为什么?我怎么能意识到这一点?谢谢!

1 个答案:

答案 0 :(得分:2)

当您通过单个模型或集合时,它使用to_json对其进行格式化。默认情况下,这将仅获取其数据库属性。你可以通过这样做告诉它抓住其他数据:

render json: Mem.all.to_json(methods: :realname)

可以在此处详细了解如何使用此方法:http://apidock.com/rails/ActiveRecord/Serialization/to_json。不推荐使用链接方法,但选项相同。