сравнение даты в рубине - PullRequest
4 голосов
/ 21 июля 2010

как сравнить конкретную дату с сегодняшним днем, чтобы узнать, больше ли эта конкретная дата, чем сегодня

Спасибо Хариш.

Ответы [ 4 ]

11 голосов
/ 21 июля 2010
@date = "2010-07-20".to_date # 20th July
@today=Date.today # 21st July

if @date >= @today
  puts "@date is greater than or equal to today's date"
else
  puts "@date is less than today's date"  
end

O / P

@date is less than today's date
4 голосов
/ 21 июля 2010

date объект имеет future? и past? методы. Это лучший способ, о котором я могу думать.

3 голосов
/ 21 июля 2010

Если вы используете объекты даты, вы просто сравниваете, как и ожидалось.

date1 > date2
0 голосов
/ 28 мая 2011

Я бы лично сделал что-то вроде:

class Integer
  def minutes
    self * 60
  end
  def hours
    self * 60.minutes
  end
  def days
    self * 24.hours
  end
  def weeks
    self * 7.days
  end
  def months #can probably be more accurate, but I'll just use 30.days
    self * 30.days
  end
  def years
    self * 12.months
  def
end

Если бы мне пришлось иметь дело с Time с.Теперь вы можете сделать что-то вроде

t1 = Time.now
t2 = t1 + 1.days
puts "You're in the past~" if t1 < t2

Я предполагаю, что так или иначе делает Rails.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...