2011-09-01 12 views
8

Bunun gerçekten mümkün olup olmadığından emin değilim ancak app/models dosyalarımızdaki kapsamlar için belgeler ekleyerek raylarımızın belgelerinin daha eksiksiz hale getirilmesini sağlamaya çalışıyorum. Ne denemek ve yapılacak aramak oluyor:Raylarda model kapsamları için belge ekleme

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

Ve uygulama üzerinde RDoc çalıştırdığınızda sonra belgelenmiş alacak daha geleneksel yöntemlerle birlikte genel bir sınıf yöntemi olarak listelenmiş newest_records görmek istiyorum gibi:

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

DÜZENLEME

Ben bu soruyu biraz belirsiz olabilir biliyoruz. Yani burada açıklığa kavuşturmak için bir girişim: Şu anda bir scope bildirimi üzerinde bir yorum satırı eklemeye çalıştığımda, kapsam için RDoc tarafından oluşturulan NO belgelerini alıyorum. RDoc'un meta metodları/öznitelikleri alabileceğini biliyorum, aksi halde attr_accessor ile bildirilen dokümanlardaki özellikleri göstermiyordu. Benim soru ben böylece benim dosyaya yorum eklemek nasıl geçerli: yöntem benim RDoc oluşturulan belgeler (kamu örnek yöntemi vb aksine) Bu bir kamu sınıf yöntemi olarak görünür

  • görünen

  • +0

    vb meta yöntemleri belgeleyen tam sözdizimi görebilirsiniz, bu docu ekle yapamaz ... 'veya 'hata ekleyerek belgesel ...' gibi olduğunu Emin değilim. Bu yorum şu anda denemediğinde görünmüyor mu? Rdoc bunu gösteriyor mu? Yardım etmek için mutlu, sorunun tam olarak ne olduğundan emin değilim. –

    +0

    @Michael Durrant - İyi nokta. İkinci okumada benim sorum çok iyi bir şekilde ifade edilmedi. Daha net hale getirmek için düzenler. –

    cevap

    5

    RDoc Docs'ta biraz araştırma yaptıktan sonra kendi sorumu yanıtlamayı başarabileceğimi düşünüyorum.

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

    çift karma meta programlanmış yöntemler almak için kullanılır ve bir örnek yöntemi oluşturuyorsanız o tek ihtiyacınız var şu şekildedir:

    Bir kapsamını belgelenebilir. Ancak, kapsam bir sınıf yöntemi oluştururken, ayrıca şunu kullanmanız gerekir: singleton yöntemi: bunu belirtmek için satır. Dokümantasyon aşağıdaki satırlarda normal olarak devam eder.

    Tam olarak sorunun ne olduğunu RDoc Documentation

    1

    Kapsamlar sınıf yöntemleridir, bu yüzden Rdoc doğru yapıyor. Rdoc'un bildiği kadarıyla çalıştığını söyleyebilirim.

    YARD gibi daha uzatılabilir bir şey kullanarak daha iyi kontrol sahibi olabilirsiniz.

    +0

    Öneriniz için teşekkürler Robert. YARD'ın oluşturduğu dokümanlar göründü - oldukça hoş görünüyorlar, bu yüzden gelecekte kullanmaya devam edebilirler. –