Gibi bir şey yapmayı denedim
Time.now + 5.days
ama bu işe yaramıyor, öyle bir şey yapabildiğim için gördüğümü ve çok etkilendiğimi belli belirsiz hatırlasam da 2.years
.
Bunu Rails 3'te nasıl yaparım?
Gibi bir şey yapmayı denedim
Time.now + 5.days
ama bu işe yaramıyor, öyle bir şey yapabildiğim için gördüğümü ve çok etkilendiğimi belli belirsiz hatırlasam da 2.years
.
Bunu Rails 3'te nasıl yaparım?
Yanıtlar:
Kullanım
Time.now + 10.days
ya da
10.days.from_now
İkisi de kesinlikle işe yarıyor. Sadece Ruby değil, Rails'de olduğunuzdan emin misiniz?
Kesinlikle Rails'teyseniz, bunu nereden çalıştırmaya çalışıyorsunuz? Aktif Desteğin yüklenmesi gerektiğini unutmayın.
Time.now + 10.days
her zaman sistem saat diliminizi alır, ancak 10.days.from_now
UTC saat dilimini alır.
Time.zone.now
yerine Time.now
.
days
, years
vb., Aktif Desteğin bir parçasıdır, Bu yüzden bu işe yaramaz irb
, ancak işe yaraması gerekir rails console
.
require 'active_support/time'
oturumun başında veya komutlarını kullanmadan önce bir yapın
Sadece referans için bazı diğer seçenekler
-10.days.ago
# Available in Rails 4
DateTime.now.days_ago(-10)
Sadece bildiğim tüm seçenekleri listeleyin:
[1] Time.now + 10.days
[2] 10.days.from_now
[3] -10.days.ago
[4] DateTime.now.days_ago(-10)
[5] Date.today + 10
Öyleyse, saat dilimini önemsiyorsak aralarındaki fark nedir?
[1, 4]
Sistem saat dilimiyle[2, 3]
Rails uygulamanızın yapılandırma saat dilimi ile[5]
Yalnızca tarih sonuca saat eklenmezBunu Rails'de deneyin
Time.new + 10.days
Bunu Ruby'de dene
require 'date'
DateTime.now.next_day(10).to_time