在保存到DB之前初始化模型对象并检查有效性

时间:2012-05-14 06:23:25

标签: ruby-on-rails

有没有办法初始化模型对象,如:

@review = current_user.reviews.build(params[:review])

然后根据review.rb中的验证规则检查它的有效性?

...而不试图将模型对象保存到DB ??

1 个答案:

答案 0 :(得分:2)

您可以使用@review.valid?检查模型是否有效而不将其保存到数据库中。

if @review.valid?
  #Do something
end

PS:实际上,您可以使用ActiveModel::Validations向任何类添加验证,而无需使用数据库功能。有关示例,请参阅Railscast #219