2011-01-29 17 views
6

जब मैं इस देखा:"क्या करें |" का अर्थ क्या है रुबी में? कुछ रूबी कोड को पढ़ने के

create_table :talks do |t| 

क्या इस अंकन |variable| है? वह क्या करता है

और साथ ही, मुझे इन विशिष्ट विषयों जैसे | |, #{}, और इसी तरह के लिए सहायता कहां मिलती है?

+0

यह पता लगाना बहुत मुश्किल है कि रूबी ब्लॉक सिंटैक्स के बारे में कई प्रश्नों को सबसे अच्छा डुप्लिकेट माना जा सकता है, मैं इसके बजाय इस खोज शब्द का सुझाव दूंगा: http://stackoverflow.com/search?q=%5Bruby% 5 डी + ब्लॉक – Phrogz

+0

"मुझे इन विशिष्ट विषयों के लिए सहायता कहां मिलती है ..."। वे बहुत ही बुनियादी, कोर-टू-रूबी चीजें हैं, कम से कम, ["प्रोग्रामिंग रूबी"] के ऑनलाइन संस्करण (http://www.ruby-doc.org/docs/ProgrammingRuby/) के माध्यम से पढ़ें। यह बहुत पुराना है, लेकिन उन मूल बातें अभी भी लागू होती हैं। –

उत्तर

7

यह def methodname(arg1, arg2)

करने के लिए एक ब्लॉक के लिए तर्क को परिभाषित करने, एक समान तरीके से ब्लॉक के एक अच्छा स्पष्टीकरण का एक तरीका आप भी सुन सकते हैं उन्हें गोल पोस्ट के रूप में भेजा Robert Sosinski's blog

+8

वह ब्लॉग लिंक 404 देता है, लेकिन एक ही लेख की एक प्रति (कम से कम यह वही लेखक और तारीख है) यहां दिखाई देती है: http://www.reactive.io/tips/2008/12/21/understanding -रूबी-ब्लॉक-procs-and-lambdas – moncheery

4

पर उपलब्ध है। उन्हें अनिवार्य रूप से तर्क दिया जाता है कि कोई संग्रह के भीतर डेटा का पर्दाफाश करने के लिए पुन: प्रयास कर सकता है। उदाहरण के लिए, एक सरणी के साथ:

# Print 1 2 3 4 
[1,2,3,4].each do |e| 
    print "#{e} " 
end 

या एक चाबी, मूल्य नक्शे के साथ, आप गोल पोस्ट

m = {"ruby" => "rails", "groovy" => "grails", "scala" => "lift", "java" => "spring"} 
m.each do |lang, framework| 
    # print the keys first - "ruby groovy scala java" 
    print "#{lang} " 
    # print the values second - "rails grails lift spring" 
    print "#{framework} " 
end 

आपका प्रश्न पर रूबी से रूबी भाषा को अधिक विशिष्ट लगता है के बीच कई तर्क होता है रेल।

+0

1. कोई भी उन्हें 'लक्ष्य पोस्ट' नहीं कहता है। 2. उन्हें तर्क 3 नाम नहीं दिया गया है। आप 'उन पर पुनरावृत्ति नहीं कर रहे हैं' – horseyguy

+0

1. बहस योग्य; 2. शब्दों पर बाल बांटना; रुबी दस्तावेज उन्हें पैरामीटर के रूप में संदर्भित करता है, तर्कों का नाम नहीं; 3. शायद 'पुनरावृत्ति' 100% सही नहीं है, लेकिन आधार समान रहता है - संग्रह में प्रत्येक तत्व के लिए कोड ब्लॉक कहा जाता है। – rynmrtn

0

मैं क्या यह कॉल करने के लिए के रूप में मैं रूबी के लिए नया हूँ के जवाब के लिए देख रहा था: मैं इन कड़ियों में से कुछ की जाँच होगी। मैंने आपके थ्रेड को बहुत उपयोगी पाया, और rvmrtn के उत्तर को ऊपर उठाया लेकिन मैं अभी तक वोट करने या टिप्पणी करने के लिए पर्याप्त "निजीकृत" नहीं हूं।

मैंने सोचा कि शायद यह लिंक (वीडियो के साथ परेशान न करें यह एक भुगतान साइट है) भी उपयोगी था, वीडियो के नीचे पाठ है।

https://teamtreehouse.com/library/iteration-with-each

इसके अलावा इस एक संबंधित अवधारणा है कि बहुत मदद मिल सकती है, जबकि आप रूबी के अपने ज्ञान बढ़ रहे है!

How to understand Ruby's .each and .map

मैंने सोचा था कि इन कोई है जो यहाँ के बाद आया मदद कर सकता है।

संबंधित मुद्दे