2011-09-01 19 views
8

मुझे यकीन नहीं है कि यह वास्तव में संभव है या नहीं, लेकिन हम अपने app/models फ़ाइलों में स्कॉप्स के लिए दस्तावेज़ जोड़ने के द्वारा हमारे रेल ऐप के दस्तावेज़ को और अधिक पूरा करने की कोशिश कर रहे हैं। क्या मैं कोशिश करते हैं और ऐसा करने के लिए देख रहा हूँ है:रेल में मॉडल स्कॉप्स के लिए प्रलेखन जोड़ना

# This is a description of what the scope does and the action that it performs 
scope :newest_records, order("created_at desc").limit(50) 

और फिर मैं newest_records अधिक परंपरागत तरीकों जो दस्तावेज मिल जाएगा के साथ एक सार्वजनिक वर्ग पद्धति के रूप में सूचीबद्ध देखने के लिए चाहते जब मैं एप्लिकेशन पर rdoc चलाने जैसे:

# some more documentation about this method 
def self.a_class method 
    .... 
end 

संपादित

मुझे पता है इस सवाल का एक सा अस्पष्ट हो सकता है। तो यहां स्पष्टीकरण देने का प्रयास है: वर्तमान में जब मैं scope घोषणा से ऊपर एक टिप्पणी पंक्ति जोड़ने की कोशिश करता हूं तो मुझे दायरे के लिए आरडीओसी द्वारा उत्पन्न कोई दस्तावेज नहीं मिलता है। मुझे पता है कि आरडीओसी मेटा विधियों/विशेषताओं को उठा सकता है अन्यथा यह उन दस्तावेज़ों में विशेषताओं को प्रदर्शित नहीं करेगा जो attr_accessor के साथ घोषित किए गए हैं। तो मेरे सवाल का कैसे मुझे लगता है कि मेरी फाइल करने के लिए टिप्पणी जोड़ने है:

  • विधि मेरी RDoc उत्पन्न प्रलेखन
  • यह एक सार्वजनिक वर्ग पद्धति के रूप में प्रकट होता है
  • (के रूप में सार्वजनिक दृष्टांत विधि आदि के खिलाफ) में प्रकट होता है
+0

वास्तव में क्या सवाल यह है कि में आदि मेटा-तरीकों का दस्तावेजीकरण के लिए पूरा वाक्य रचना देख सकते हैं, यह दस्तावेज जोड़ें करने में असमर्थ ... 'या' त्रुटि जोड़ने दस्तावेज ... 'आदि है मुझे यकीन नहीं है। क्या वर्तमान में टिप्पणी नहीं की गई है? क्या rdoc इसे दिखाता है? मदद करने में खुशी है, बस यह सुनिश्चित न करें कि सवाल क्या है। –

+0

@ माइकल दुरेंट - अच्छा बिंदु। दूसरे पढ़ने पर मेरा प्रश्न बहुत अच्छी तरह से शब्द नहीं है। स्पष्ट करने के लिए संपादित करेंगे। –

उत्तर

5

कुछ आरडीओसी डॉक्स में खोदने के बाद मुझे लगता है कि मैंने अपने स्वयं के प्रश्न का उत्तर देने में कामयाब रहा है।

आप इस प्रकार एक गुंजाइश दस्तावेज़ कर सकते हैं:

## 
# :singleton-method: 
# Documentation for the scope to explain what it does 
scope :newest_records, order("created_at desc").limit(50) 

डबल हैश मेटा-प्रोग्राम किया तरीकों को लेने के लिए प्रयोग किया जाता है, और आप एक उदाहरण विधि बना रहे हैं तो फिर उस आप सभी की जरूरत है। हालांकि स्कोप एक क्लास विधि बनाते हैं, आपको इसे इंगित करने के लिए सिंगलटन-विधि: लाइन का उपयोग करने की भी आवश्यकता होती है। दस्तावेज़ीकरण निम्नलिखित पंक्तियों पर सामान्य के रूप में जारी है।

आप RDoc Documentation

1

स्कॉप्स कक्षा विधियां हैं, इसलिए आरडीओसी सही कर रहा है। मैं कहूंगा कि आरडीओसी जानता है कि काम कर रहा है।

आपके पास यार्ड की तरह अधिक विस्तार योग्य उपयोग करके बेहतर नियंत्रण हो सकता है।

+0

सुझाव रॉबर्ट के लिए धन्यवाद। यार्ड जेनरेट किए गए दस्तावेज़ देख चुके हैं - वे बहुत अच्छे लगते हैं, इसलिए भविष्य में इसका उपयोग करने के लिए अच्छी तरह से देख सकते हैं –

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