PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come posso ignorare gli operatori .. e ... di Ruby Ranges per accettare Float::INFINITY?

Non credo che quello che vuoi fare sia un modo corretto per risolvere questo problema.

Quello che suggerirei invece, è semplicemente di sovrascrivere il end_date metodo nel modello:

def end_date
  super == Float::INFINITY ? DateTime::Infinity.new : super
end

Questo dice sostanzialmente se end_date in db è Float::INFINITY return DateTime::Infinity.new come end_date , altrimenti restituisci ciò che è nel database.