gpt4 book ai didi

ruby-on-rails - 如何仅向 singleton_class 添加验证?

转载 作者:行者123 更新时间:2023-12-04 19:54:00 25 4
gpt4 key购买 nike

当我向 singleton_class 添加验证时,它似乎被分配给了基类,并且它不会触发任何一个。

class Example
attr_accessor :title, :some_boolean
include ActiveModel::Validations
end


puts Example.validators # []

with_validations = Example.new
with_validations.singleton_class.send :validates, :title, :presence => true

puts with_validations.valid? #true

puts Example.validators.length # 1

我希望发生的事情:

with_validations.valid?  # false
Example.new.valid? # true

最佳答案

您可以使用“on”选项进行验证。

validates :title, presence: true, on: :draft

example = Example.new
example.valid? # true
example.valid?(:draft) #false

关于ruby-on-rails - 如何仅向 singleton_class 添加验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18284056/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com