I found a few duplicate Q&As; however, I did not figure it out.
I have House
model which has :available_at
validation (The field is Date
). I'm trying to achieve something like this.
The availability date must be in future.
# db/schema.rb
create_table "houses", force: :cascade do |t|
# ...
t.date "available_at", null: false
# ...
end
# app/models/house.rb
class House < ApplicationRecord
validates :available_at, presence: true, if: -> { available_at.future? }
end
Also, here is the PR
Duplicate answers
Conditional Validation RAILS MODEL
Conditional validation if another validation is valid
Rails validate uniqueness only if conditional
rails date validation with age
How do I validate a date in rails?
https://codereview.stackexchange.com/questions/110262/checking-for-valid-date-range-in-rails