2012-05-31 15 views
9

मैं yaml में एम्बेडेड चर के साथ रूबी स्ट्रिंग को कैसे स्टोर कर सकता हूं, लेकिन जब मैं yaml से स्ट्रिंग प्राप्त करता हूं तो वैरिएबल मानों को केवल सम्मिलित करता हूं? रेल के रूप में YAML फ़ाइल मेंएम्बेडेड वैरिएबल के साथ रूबी तार

+0

क्या आप एम्बेडेड चर के साथ स्ट्रिंग द्वारा मतलब है? क्या आप वाकई परिवर्तनीय * नाम * डालना चाहते हैं ... –

+0

वह बाद में इंटरपोलेशन करना चाहता है। मेरा अनुमान। –

+0

मैंने प्रश्न को "यमल # {variable} के लिए टेक्स्ट" जैसे कुछ करना चाहते हैं। To_yaml जहां वैरिएबल का मूल्यांकन yaml को भेजने से पहले नहीं किया जाता है। – vlasits

उत्तर

19
str = "Hi %{name}, %{msg}. Bye %{name}." #yaml it, de-yaml it back to string 
h = {:name=> "John", :msg=> "this message is for you"} 
puts str % h 
#=>Hi John, This message is for you. Bye John. 
+0

हाँ, यह वही है जो मैं चाहता हूं कि – yatagarasu

+2

तो एक स्पिंटफ शांत करें! – Hooopo

+0

वाह! अच्छे के लिए रूबी! –

2

एम्बेड ERB किया:

# config/initializers/load_config.rb 
APP_CONFIG = YAML.load_file("#{Rails.root}/config/app_config.yml")[Rails.env] 


# config/app_config.yml 
development: 
    key1: <%= # ruby code ... %> 
test: 
    key1: <%= # ruby code ... %> 
production: 
    key1: <%= # ruby code ... %> 
संबंधित मुद्दे