मैं ActiveSupport द्वारा प्रदान की गई इस सुविधा से अवगत हूं।मैं जावास्क्रिप्ट शैली हैश एक्सेस कैसे प्राप्त कर सकता हूं?
h = ActiveSupport::OrderedOptions.new
h.boy = 'John'
h.girl = 'Mary'
h.boy # => 'John'
h.girl # => 'Mary'
हालांकि मैं पहले से ही एक बड़ी हैश है और मैं डॉट नोटेशन का उपयोग कर कि हैश का उपयोग करना चाहते हैं। मैंने यही कोशिश की:
large_hash = {boy: 'John', girl: 'Mary'}
h = ActiveSupport::OrderedOptions.new(large_hash)
h.boy # => nil
यह काम नहीं किया। मै इसे काम मे कैसे ले सकता हूँ।
मैं गहरे लाल रंग का उपयोग कर रहा हूँ 1.9.2
अद्यतन:
माफ करना, मैं उल्लेख किया जाना चाहिए था कि मैं openstruct उपयोग नहीं कर सकते क्योंकि यह each_pair तरीका है जिसके Struct है नहीं है। मैं पहले से चाबियाँ नहीं जानता इसलिए मैं ओपनस्ट्रक्चर का उपयोग नहीं कर सकता।
लगभग एक समान प्रश्न: - हैश कुंजी http://stackoverflow.com/questions/2240535/ruby-hash-keys-as-methods-on-a-class –
[रूबी के संभावित डुप्लिकेट विधि नामों के लिए?] (http://stackoverflow.com/questions/6423484/ru by-hash-keys-to-method-names) –