कोशिश आप ओल्सन समय क्षेत्र की जरूरत है (क्योंकि तीन अक्षर का समय क्षेत्रों अस्पष्ट हैं, के रूप में GMT ऑफसेट कर रहे हैं), तो ऐसा लगता है कि वहाँ शुद्ध रूबी/रेल में यह करने के लिए कोई रास्ता नहीं है की तरह। रूबी केवल संक्षिप्त कोड प्रदान करेगा (मूल रूप से date +%Z
के माध्यम से), और रेल इसकी कॉन्फ़िगरेशन के समय क्षेत्र का उपयोग करता है (डिफ़ॉल्ट: यूटीसी)।
another answer साथ
जिसके अनुसार, shelling out can be made to work संयोजन में:
def get_local_timezone_str
# Yes, this is actually a shell script…
olsontz = `if [ -f /etc/timezone ]; then
cat /etc/timezone
elif [ -h /etc/localtime ]; then
readlink /etc/localtime | sed "s/\\/usr\\/share\\/zoneinfo\\///"
else
checksum=\`md5sum /etc/localtime | cut -d' ' -f1\`
find /usr/share/zoneinfo/ -type f -exec md5sum {} \\; | grep "^$checksum" | sed "s/.*\\/usr\\/share\\/zoneinfo\\///" | head -n 1
fi`.chomp
# …and it almost certainly won't work with Windows or weird *nixes
throw "Olson time zone could not be determined" if olsontz.nil? || olsontz.empty?
return olsontz
end
यह मैं स्थानीय क्षेत्र देता है। मैं चाहता हूं कि अगर नई दिल्ली में बैठे व्यक्ति मेरे ऐप तक पहुंच जाए तो उसे "आईएसटी" में समय मिल जाएगा और यदि कोई व्यक्ति सैनफ्रांसस्को में बैठा है तो उसे "पीएसटी" में समय मिल जाएगा .. मुझे जिस कॉन्फ़िगरेशन की आवश्यकता है इसे प्राप्त करने के लिए मेरे ऐप में बनाने के लिए? –
Thanx suvankar। आपका जवाब काम किया। :) –