13

यदि मैं उत्पादन में और स्थानीय रूप से विकास में हूं तो मैं Google सीडीएन के माध्यम से jQuery यूआई लोड करना चाहता हूं। तो मेरे application.html.erb लेआउट में, मुझे यह जानना है कि मैं उत्पादन या देव में हूं या नहीं। क्या कोई वैरिएबल है जिसे मैं देख सकता हूं?रेल में ईआरबी फ़ाइल में विकास या उत्पादन में कैसे जांचें?

उत्तर

28

परिटोश के उत्तर पर थोड़ा विस्तार करने के लिए, Rails.env.production? और Rails.env.development? आप जिस पर्यावरण का उपयोग कर रहे हैं उसके आधार पर सही/गलत वापस आ जाएंगे।

ActiveSupport मॉड्यूल में StringInquirer कक्षा में इन विधियों को परिभाषित किया गया है। उन्हें here देखें।

+0

मैं इन कार्यों के स्रोत कहां देख सकता हूं? एक मेटा प्रोग्रामिंग चीज होना चाहिए। कोई विचार? – shajin

+1

हां, यह है। एक नज़र डालें [यहां] (https://github.com/rails/rails/blob/e20dd73df42d63b206d221e2258cc6dc7b1e6068/activesupport/lib/active_support/string_inquirer.rb)। – Zajn

2

Rails.env का उपयोग करें, यह आपको वह वातावरण देगा जो आप काम कर रहे हैं।

+1

धन्यवाद,: मैं करते बाकी

इसके अलावा कुछ करता है, तो मैं बहुत से वातावरण जाँच कर रहा हूँ आप की तरह कुछ करना चाहता हूँ सकता है। ऐसा लगता है कि एक स्ट्रिंगइक्वायरर लौटाता है। क्या कोई विशेष तरीका है कि हमें इस ऑब्जेक्ट से पूछने की उम्मीद है? –

+0

@Zajn उत्तर की जांच करें, यह आपकी आवश्यकताओं से पूरी तरह मेल खाता है। –

7

पिछले जवाब के बंद रिफ के लिए, आप तो जैसे विशिष्ट वातावरण के लिए आपका चेक गुंजाइश कर सकते हैं:

Rails.env.development? 

जहां development? वातावरण आप जाँच करना चाहते हैं का नाम है। कि मैं के लिए क्या देख रहा था

if %w(staging production).include?(Rails.env) 
    # do something 
end 
संबंधित मुद्दे