Ruby on Rails attr_accessible和scaffolding

时间:2011-03-29 07:32:19

标签: ruby-on-rails ruby-on-rails-3

我最近开始在rails(3.0.5)中构建应用程序。为了让事情发生变化,我搭建了一个模型(比如用户)。现在,它创建的模型是ActiveRecord::Base的完全裸扩展,但是控制器使用User.create(params[:user])等,暗示attr_accessible正在设置。

一段时间后(现在),经过一些更改,我收到有关群发作业中受保护字段的警告,这些方法都没有奏效!任何人都可以帮我弄清楚为什么会这样,以及为什么rails会支撑一些不起作用的东西?

1 个答案:

答案 0 :(得分:1)

脚手架和attr_accessible是两个完全不同的东西。

当您将属性指定为可访问时,您说当您尝试批量分配(如保存)模型时,只会更新可访问的值。因此,如果您将用户名字段设为可访问,并且您尝试更改密码字段,则后者不会更改,您将收到警告。

另一方面,脚手架只是一种快速启动RESTful资源并快速运行的方法。

这两个想法确实没有联系。