所以我使用ActiveRecord模型验证来验证RESTful应用程序中的表单。
我有一个创建动作:
@association = Association.new
并且表单的接收端使用表单参数创建属性的数据哈希以使用以下方法保存到数据库:
@association = user.associations.create(data)
如果验证失败,我想简单地渲染创建操作。问题是.create(not!)方法在模型验证失败的情况下抛出异常。例如:
validates_format_of :url, :with => /(^$)|(^(http|https):\/\/[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}(([0-9]{1,5})?\/.*)?$)/ix, :message => "Your url doesn't seem valid."
模型中的产生:
ActiveRecord::RecordInvalid Exception: Validation failed: Url Your url doesn't seem valid.
我以为.create!应该抛出异常,而.create不是。
我在这里错过了什么吗?
Ruby 1.8.7 patchlevel 173& rails 2.3.3