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



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

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

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

。而不尝试将模型对象保存到数据库??

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

if @review.valid?
  #Do something
end

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

最新更新