Rails:Form_for没有相应数据库列的字段

时间:2011-01-21 12:30:16

标签: ruby-on-rails activerecord

我正在尝试使用包含:terms_and_conditionsvalidates_presence_of)复选框的rails form_for。 terms_and_conditions尚未在相应的数据库表中声明为列。

目前,当我提交表单并尝试使用MyModel.new(params[:mymodel])创建新模型时,我会得到一个*'unknown属性:terms_and_conditions'*错误。

所以,只是想知道:我如何为列创建一个字段 - 并在其上运行验证 - 而不将该字段插入数据库?

非常感谢......

2 个答案:

答案 0 :(得分:5)

模型中的terms_and_conditions需要虚拟属性。 看一下这个screencast

答案 1 :(得分:3)

仅接受T& Cs,您现在应该可以将其放入您的模型中:

validates_acceptance_of :terms_and_conditions