ActiveSupport :: Concern vs模型继承

时间:2014-03-16 19:56:33

标签: ruby-on-rails ruby inheritance activesupport-concern

我想在几个模型之间分享一些行为。至少有两种方法:

1)ActiveSupport::Concern

module Contentable
  extend ActiveSupport::Concern
  module InstanceMethods
    #some shared behavior(validations, callbacks, etc)
  end
end

class Content < ActiveRecord::Base
  include Contentable
end

2)模型(类)继承:

class Content < ActiveRecord::Base 
   #some shared behavior(validations, callbacks, etc)
end

class Article < Content  
end

我看到的第一个的唯一优势是你可以包含任意数量的模块 两种方法都有其他优点/缺点吗?

0 个答案:

没有答案