15
नोब सवाल यहाँ! इस तरह एक सरणी के लिएएक सरणी रूबी रेल के भीतर हैश से विशिष्ट मान पुनर्प्राप्त करें
arr = [{id: 1, name: "Pedro"},{id: 2, name: "Pablo"}]
और चाहते हैं:
ids = [1,2]
मैं मानचित्र का उपयोग में देखा या इस तरह का चयन करें:
मुझे लगता है कि इस तरह दिखता है हैश के साथ एक सरणी है
ids = arr.each.select{|k,v| "id"==k}
लेकिन मैं इसे समझ नहीं सकता।
यह काम करता है !!! एक टन निकलास धन्यवाद !! – obi
'arr.map (&: [: id]) जैसे कुछ कैसे आते हैं? – Noz
@ साइकिल: कई कारण: पहला ': [' प्रतीक नहीं है, क्योंकि '[' मान्य पहचानकर्ता नहीं है। दूसरा, आप विधि तर्कों के साथ संयोजन में '&' चाल का उपयोग नहीं कर सकते हैं, क्योंकि सटीक वाक्यविन्यास 'विधि (arg1, arg2, ..., और x)' है, जहां x एक अभिव्यक्ति है जो उस मान का मूल्यांकन करती है जिसमें ' to_proc' विधि। उस 'to_proc' विधि को बुलाया जाता है और परिणामी' Proc' ऑब्जेक्ट 'विधि' में ब्लॉक पैरामीटर के रूप में पारित किया जाता है। –