मैंने कुछ ऐसा करने की कोशिश की
Time.now + 5.days
लेकिन यह काम नहीं करता है, भले ही मैं अस्पष्ट रूप से याद कर रहा हूं, और बहुत प्रभावित हो रहा हूं, जैसे कुछ करने में सक्षम होने 2.yearsआदि।
मैं रेल 3 में कैसे करूँ?
मैंने कुछ ऐसा करने की कोशिश की
Time.now + 5.days
लेकिन यह काम नहीं करता है, भले ही मैं अस्पष्ट रूप से याद कर रहा हूं, और बहुत प्रभावित हो रहा हूं, जैसे कुछ करने में सक्षम होने 2.yearsआदि।
मैं रेल 3 में कैसे करूँ?
जवाबों:
उपयोग
Time.now + 10.days
या और भी
10.days.from_now
दोनों जरूर काम करते हैं। क्या आप वाकई रूबी में हैं और न सिर्फ रूबी?
यदि आप निश्चित रूप से रेल में हैं, तो आप इसे कहां से चलाने की कोशिश कर रहे हैं? ध्यान दें कि एक्टिव सपोर्ट को लोड करना होगा।
Time.now + 10.daysहमेशा अपने सिस्टम टाइमज़ोन को उठाता है, जबकि 10.days.from_nowयूटीसी टाइमज़ोन को उठाएगा यदि रेल विन्यास में कुछ भी सेट नहीं किया गया है।
Time.zone.nowस्थान पर उपयोग करना सबसे अच्छा है Time.now।
days, yearsआदि, सक्रिय समर्थन का हिस्सा हैं, इसलिए यह काम नहीं करेगा irb, लेकिन इसमें काम करना चाहिए rails console।
require 'active_support/time'सत्र की शुरुआत में या इसके उपयोग से पहले इसे कमांड करें
कुछ अन्य विकल्प, केवल संदर्भ के लिए
-10.days.ago
# Available in Rails 4
DateTime.now.days_ago(-10)
मेरे द्वारा चुने गए सभी विकल्पों को सूचीबद्ध करें:
[1] Time.now + 10.days
[2] 10.days.from_now
[3] -10.days.ago
[4] DateTime.now.days_ago(-10)
[5] Date.today + 10
इसलिए, अगर हम समय-सीमा की परवाह करते हैं, तो उनके बीच क्या अंतर है:
[1, 4] सिस्टम टाइमज़ोन के साथ[2, 3] अपने रेल एप्लिकेशन के कॉन्फ़िगर समयक्षेत्र के साथ[5] परिणाम में केवल दिनांक शामिल नहीं हैरेल पर यह कोशिश करो
Time.new + 10.days
रूबी पर यह कोशिश करो
require 'date'
DateTime.now.next_day(10).to_time