मेरे पास एक ऐसा एप्लिकेशन है जहां मैं उपयोगकर्ता को टाइमज़ोन सेट करने की अनुमति देना चाहता हूं। जब उपयोगकर्ता एक अनुस्मारक प्रविष्टि बनाता है, तो प्रविष्टि यूटीसी में डीबी में संग्रहीत की जाएगी। लेकिन जब वह ऐप में कैलेंडर प्रविष्टि खोलता है, तो उसे अपने चयनित टाइमज़ोन में प्रविष्टि देखना चाहिए। मैं क्रोनिक का उपयोग कर रहा हूं लेकिन यह यहां बेकार है।रेल में टाइमज़ोन
before_filter :set_user_time_zone
...
def set_user_time_zone
Time.zone = current_user.timezone if user_signed_in?
end
इस के बाद, प्रविष्टियों अभी भी यूटीसी में, लेकिन समय के अंतर के साथ सहेजे जाते हैं:
मेरी ApplicationController.rb
में, मैं निम्नलिखित स्ट्रिंग है। उदाहरण के लिए, मैंने टाइमज़ोन को "दिल्ली" के रूप में सेट किया है जो यूटीसी से +530 है। जब मैं "जनवरी, 16 - 12:15 पूर्वाह्न" के लिए कैलेंडर प्रविष्टि को सहेजना चाहता हूं - डेटाबेस "2011-01-15 18:45:19 यूटीसी" के साथ आबादी है - इसलिए वास्तविक समय से 5:30 घंटे पहले बचाना।
यूआई में भी मैं वर्तमान उपयोगकर्ता के टाइमज़ोन में प्रदर्शित समय के बजाय इस प्रविष्टि को देख रहा हूं।
मैं जानना चाहता हूं कि रेल में इस तरह की टाइमज़ोन सुविधाओं को संभालने के लिए सही तरीका क्या होना चाहिए।
मैं अगर इस लिंक में मदद मिलेगी पता नहीं है, लेकिन यह अच्छा जानने-की-है: http://stackoverflow.com/questions/4529387/does-anyone -को-कैसे-उचित-से-उपयोगकर्ता-टाइमज़ोन-इन-रेल-2-3 – Zabba