如何验证这些值中的任何一个是否存在,而不是两者都存在?
validates_presence_of :client_id, message: 'Please enter a value'
validates_presence_of :agency_id, message: 'Please enter a value'
我查看了导轨指南,我认为我需要使用条件验证,但我仍然有点卡住了。
答案 0 :(得分:6)
试试这个
int my_vl_k(int normalized_feat_set, int k);
如果要包含错误消息,可以执行
validates :client_id, presence: true, unless: :agency_id
validates :agency_id, presence: true, unless: :client_id
您可以阅读有关validation messages
的更多信息答案 1 :(得分:2)
如果使用除非语法,则会出现2个错误:一个是client_id,一个是agency_id,如果两个都是Nil。
如果只需要一个错误,则需要自定义方法。 Guides: ActiveRecord Validation
validate :client_or_agency
def client_or_agency
errors.add(:client_id, "Either Client or Agency needs a value") unless client_id.present? || agency_id.present?
end