我在模型中添加了一个计算当前进度的方法。 我还覆盖了as_json方法,在我的响应中包含了虚拟字段。
def progress
//code to get progress
end
def as_json(options = { })
super((options || { }).merge({
:methods => [:progress]
}))
end
我现在遇到的问题是我收到了一个UnknownAttributeError,因为骨干网正在尝试提交字段“progress”。
ActiveRecord::UnknownAttributeError (unknown attribute: progress):
我尝试将其添加到控制器
中更新方法的第一行params.delete('progress')
答案 0 :(得分:0)
将您的进度方法从attr_accessible
行中取出,这应该可以解决问题。
我遇到了同样的问题,而且在支持(Backbone.js on Rails)帮助我的人(强烈推荐这本书,附带对你的应用的支持)。
答案 1 :(得分:0)
它是嵌套的所以我必须这样做
params[:assignment].delete('progress')
我还将其添加到模型中
attr_reader :progress