【发布时间】:2015-07-20 02:46:45
【问题描述】:
我是新来的。以下是我正在尝试的内容
class Category < ActiveRecord::Base
attr_accessible :name
has_many :post
end
但我不确定如何在我上面的 scnerio 中的 rails 4+ 中使用 attr_accessible。 我按照旧的做。请建议
【问题讨论】:
标签: ruby-on-rails ruby
我是新来的。以下是我正在尝试的内容
class Category < ActiveRecord::Base
attr_accessible :name
has_many :post
end
但我不确定如何在我上面的 scnerio 中的 rails 4+ 中使用 attr_accessible。 我按照旧的做。请建议
【问题讨论】:
标签: ruby-on-rails ruby
在 Rails 4 + 中,不支持批量赋值。
你必须传入控制器并使用它,
def create
Category.create(category_params)
end
private
def category_params
params.require(:category).permit(:name)
end
然后在您的控制器操作中调用 category_params 方法。
【讨论】:
对于 rails 4 及以上版本,您不需要使用它,只需允许您的属性在控制器中
def category_params
params.require(:category).permit(:name)
end
【讨论】:
在 rails 4 attr_accessible 已弃用,您应该使用强参数
Rails 4, Strong Parameters, and Deprecation of the attr_accessible Macro
【讨论】: