首页 > 解决方案 > Rails 单个包含多个类

问题描述

DelayTasks在这个模块中有一个模块和许多类。我想在DelayedEmails所有类中包含另一个模块,DelayedTasks就像第一个类一样,但只有一个包含。有没有办法这样做?

module DelayedTasks
  class A
    include DelayedEmails
  end

  class B
  end

  class C
  end

  class D
  end
end

标签: ruby-on-railsmodule

解决方案


看来你应该能够做到:

module DelayedTasks

  class Base 
    include DelayedEmails
  end

  class A < Base
  end

  class B < Base
  end

  class C < Base
  end

  class D < Base
  end

end

顺便说一句,在单个文件中定义多个类似乎不是一个好习惯(IMO)。当然,它有效。但是,您最终可能会四处寻找这些类的定义位置,而如果它们位于单独的文件中,则它们的定义位置可能会更明显一些。


推荐阅读