我有一个 ActiveModel 类,其实例只有在被触摸时才有效。以下代码有效:
class Base
include ActiveModel::Model
validates :touched?, inclusion: { in: [true] }
def update(params = {})
initialize(params)
@touched = true
end
def touched?
!!@touched
end
end
但我不喜欢它。这不好。我想写这样的东西:
validates: touched?, equality: true
如果不使用自定义验证器,是否有更好/更短的写入方式?如果它也适用于除布尔之外的其他值,那将会很好。
答案 0 :(得分:4)
validates :touched?, acceptance: true