【发布时间】:2014-08-09 07:37:54
【问题描述】:
在 Rails 项目中,我使用 inherited_resources 1.5.0 gem。我有以下型号:
forums_controller.rb:
class ForumsController < InheritedResources::Base
respond_to :json
skip_before_filter :verify_authenticity_token
def permitted_params
params.permit(vocabulary: [:name])
end
end
forum.rb:
class Forum < ActiveRecord::Base
attr_accessible :name
end
现在当我想创建新论坛时,我将参数发布到 rails 项目,在这种状态下,我有一个问题:
当我在我的论坛模型(forum.rb)中使用attr_accessible :name 时,服务器日志中出现以下错误,并且论坛不保存到数据库:
Started GET "/forums" for 127.0.0.1 at 2014-08-09 11:51:42 +0430
ActionController::RoutingError (undefined method 'attr_accessible' for #<Class:0x000000064c0468>):
app/models/forum.rb:2:in '<class:Forum>'
app/models/forum.rb:1:in '<top (required)>'
app/controllers/forums_controller.rb:3:in '<top (required)>'
当我在我的论坛模型中删除 attr_accessible :name 时,新论坛将使用 empty name 保存到数据库中。我该如何解决这个问题?
【问题讨论】:
-
attr_accessible在 Rails 4 中被贬值了 :)
标签: ruby-on-rails ruby-on-rails-4