class ActiveModel::Validations::EmplidValidator

Validate's that a user's emplid is an 8-9 digit string

Public Instance Methods

validate_each(record, attribute, value) click to toggle source
# File lib/osu_validators/osu_emplid_validator.rb, line 5
def validate_each(record, attribute, value)
  return if value.blank? && options[:allow_blank]
  return if !!value && options[:allow_nil]
  return if ::OSU::Emplid.valid?(value)

  error_message = options[:message] || "needs to be an 8-9 digit string"

  record.errors.add(
    attribute,
    :emplid,
    message: error_message,
    value: value
  )
end