10

Posso fare qualcosa di simile in Rails?Miscelare nel modulo con attr_accessible, has_one, has_many

module Authored 
    belongs_to :user 
    attr_accessible creation_date 
end 

class Line < ActiveRecord::Base 
    include Authored 
end 

class Document < ActiveRecord::Base 
    include Authored 
end 

class User < ActiveRecord::Base 
    has_many :creations, :class_name => 'Authored' 
end 

o devo usare semplice eredità, anche se le mie classi autore hanno differenti gerarchie di classi?

risposta

23
module Authored 
    extend ActiveSupport::Concern 

    included do 
    belongs_to :user 
    attr_accessible :creation_date 
    end 
end 

class Line < ActiveRecord::Base 
    include Authored 
end 

class Document < ActiveRecord::Base 
    include Authored 
end 

Per maggiori informazioni su ActiveSupport::Concern, http://api.rubyonrails.org/classes/ActiveSupport/Concern.html

+1

Proprio quello che mi serviva, grazie :) sembra che non si risolverà per il has_many nel mio utente. Probabilmente ho bisogno di affrontarlo usando un'associazione polimorfica. –

Problemi correlati