I'm writing a custom validator in ActiveRecord so that a deadline makes sense:

  validate :deadline_is_possible?

  def deadline_is_possible?
    if deadline > begins_at
      errors.add(:deadline, 'must be possible')
    end
  end

This however generates a "NoMethodError: undefined method `>' for nil:NilClass". I event tried to turn the dates into strings, like:

  def deadline_is_possible?
    if deadline.to_s > begins_at.to_s
      errors.add(:deadline, 'must be possible')
    end
  end

and though it doesn't generate an error, doesn't work either.

I also declared other validators (such as

  def begins_at_is_date?
    if !begins_at.is_a?(Date)
      errors.add(:begins_at, 'must be a date')
    end
  end

that work OK.

Edit
Report