1

我有一堆是 resque 作业的类,我只是注意到我在每个命名的 RECEIVER 中定义了一个常量,其中包含作业结果的电子邮件分发列表。

如果我有一个常量 RECEIVER = "emails" 并在多个类中定义它,那么 ruby​​/rails 中的默认行为是什么。每个类在初始化时将 RE​​CEIVER 的值分配给该类的一个实例。

只是试图想出最好的方法来重构这样的东西。谢谢你

4

1 回答 1

2

它在每个类中分别定义。重构以防止代码重复的最佳方法是使用module

module CommonMethods
   RECEIVER = "emails"
end

然后在你的课上:

class SomeClass
  include CommonMethods

  #do stuff
end

这样,电子邮件列表只在一个地方定义。

您还可以在此处定义所有类通用的其他方法。

于 2013-03-28T19:37:00.453 回答