Смешивание в модуле с attr_accessible, has_one, has_many
Могу ли я сделать что-то вроде Rails?
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
Или мне нужно использовать простое наследование, даже если мои классы Authored имеют разные иерархии классов?
Ответы
Ответ 1
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
Подробнее о ActiveSupport::Concern
, http://api.rubyonrails.org/classes/ActiveSupport/Concern.html