में लोड नहीं हो सकती है तो मैं कुछ गोपनीय कॉन्फ़िगरेशन डेटा संग्रहीत करने के लिए एक YAML फ़ाइल का उपयोग कर रहा हूं। मैं बस उस फाइल का उपयोग विकास पर्यावरण में कर रहा हूं। उत्पादन में मैं एनएनवी चर का उपयोग कर रहा हूँ।बचाव यदि YAML फ़ाइल मौजूद नहीं है या रेल
यहाँ अभी मैं क्या कर रहा हूँ है:
मैं एक config/confidental.yml फ़ाइल है, कि इस तरह दिखता है:
email:
user_name: 'my_user'
password: 'my_passw'
मैं एक config/वातावरण/development.rb फ़ाइल है
# Mailer config
email_confidential = YAML.load_file("#{Rails.root}/config/confidential.yml")['email']
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
:address => "smtp.gmail.com",
:port => 587,
:domain => 'baci.lindsaar.net',
:user_name => email_confidential['user_name'],
:password => email_confidential['password'],
:authentication => 'plain',
:enable_starttls_auto => true }
मेरा प्रश्न है:: मैं कैसे सुनिश्चित करें कि YAML फ़ाइल मौजूद है और लोड किया जा सकता है, और अगर नहीं कुछ अपवाद फेंक कर सकता है कि (अन्य सामग्री के अलावा) इन पंक्तियों है? उसे कहां रखा जाना चाहिए?
धन्यवाद:
एक बेहतर समाधान तो पहली फ़ाइल खोलने का प्रयास करने, बाद में अपवाद से उबरने है। मुझे विश्वास है कि कॉन्फ़िगरेशन/वातावरण/शुरुआती भी हैं, है ना? –
rubocop अब File.exist का सुझाव देता है? (बहुवचन नहीं) File.exists के बजाय? –