作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Rails 是否允许对 validates_related 进行条件验证?我在 Rails 4.2.0 上看到以下内容。我是否试图错误地做到这一点?
型号:
class User < ActiveRecord::Base
has_many :books
validates_associated :books, if: :should_validate_book?
def should_validate_book?
return false
end
end
class Book < ActiveRecord::Base
belongs_to :user
validates_presence_of :title
end
> u = User.create!
=> #<User id: 2, created_at: "2015-02-24 19:34:51", updated_at: "2015-02-24 19:34:51">
> u.books.build
=> #<Book id: nil, user_id: 3, title: nil, created_at: nil, updated_at: nil>
> u.valid?
=> false
> u.books.first.errors
=> #<ActiveModel::Errors:0x007fa256b210d8 @base=#<Book id: nil, user_id: 3, title: nil, created_at: nil, updated_at: nil>, @messages={:title=>["can't be blank"]}>
最佳答案
事实证明,对于 has_many
,默认情况下 validates_related 是 ON 的。关系。要有条件地实现,您需要在 has_many 声明中添加 validate: false :
has_many :books, validate: false
关于ruby-on-rails - Rails 是否允许对 validates_related 进行条件验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28704762/
谁能弄清楚这里发生了什么?我能够让我的代码按照我想要的方式工作,但我无法弄清楚为什么 validates_related 没有按我预期的那样工作。这是我的代码片段: class Flag :post
这里有两个类,1:n 关系 class Company true c.brands.new # => # c.valid? #=> false c.errors.full_message #=> [
Rails 是否允许对 validates_related 进行条件验证?我在 Rails 4.2.0 上看到以下内容。我是否试图错误地做到这一点? 型号: class User u = User.
我是一名优秀的程序员,十分优秀!