2013-06-06 12 views
6

Szyny to "Konwencja dotycząca konfiguracji". Jednak nie spotkałem "standardu" dla porządku skojarzeń, zakresów, obejmuje, zatwierdzenia, ... w modelach Rails jeszcze. Weźmy na przykład następujący, uproszczony model produktu:Jaka jest prawidłowa kolejność skojarzeń, zakresów, zatwierdzeń itp. W modelach Railsowych

class Product < ActiveRecord::Base 
    mount_uploader :logo, AssetUploader 
    acts_as_taggable 
    paginates_per 50 

    include ActionView::Helpers::NumberHelper 

    belongs_to :company 

    validates_presence_of [:title, :price, :plu] 

    scope :on_website, where(display: true) 

    def display_price 
    ... 
    end 
end 

Czy to jest właściwa kolejność? Być może nie jest to ważne dla wielu osób, ale osobiście uważam, że byłoby wspaniale, gdyby istniała na to konwencja.

+4

Nie jestem świadomy takiej konwencji. Ponadto, ponieważ ruby ​​się nie przejmuje, * każda * kolejność jest poprawna. –

+0

Czy nie sądzisz, że byłoby miło, gdyby istniała konwencja? – lafeber

+0

Sądzę, że to nie ma znaczenia, dopóki trzymasz powiązane ze sobą elementy, tak, że łatwo je znaleźć. –

Odpowiedz

4

Nie ma takiej konwencji. Możesz jednak utworzyć go dla swojego projektu i być z nim zgodny we wszystkich modelach. Oto, co obserwuję.

class Model < ActiveRecord::Base 
    #all mixins 
    include Something 
    extend Something 

    #other stuff 
    acts_as_taggable 
    paginates 

    #associations 
    has_many :something 
    belongs_to :something_else 

    #validations 
    validate_presence_of :something 

    #scopes 
    scope :something 

    #instance methods 
    def instance_method 
    end 

    #class methods 
    def self.method 
    end 

    #private methods 
    private 
    def method2 
    end 
end 
Powiązane problemy