动态地在ActiveRecord中包含一个模块

时间:2012-02-05 17:08:51

标签: ruby-on-rails ruby ruby-on-rails-3

在我的应用中,我有一个应该包含模块的模型。该模型有一个名为“format”的属性,用于确定应包含哪个模块。例如,如果format == 0,那么模型应该include SingleElimination,而如果format == 1,那么模型应该include DoubleElmination。这样做的最佳方式是什么?

1 个答案:

答案 0 :(得分:1)

def include_format
  case format
  when 1
    extend SingleElimination
  when 2
    extend DoubleElmination
  end
end

after_initialize :include_format