1

resque ジョブであるクラスがたくさんありますが、ジョブ結果の電子メール配布リストを含む名前付きの各 RECEIVER で定数が定義されていることに気付きました。

定数 RECEIVER = "emails" があり、複数のクラスで定義されている場合、ruby/rails のデフォルトの動作は何ですか。各クラスは、初期化時にクラスのインスタンスに RECEIVER の値を割り当てます。

このようなものをリファクタリングする最善の方法を考えようとしています。ありがとうございました

4

1 に答える 1

2

各クラスで個別に定義されます。コードの重複を防ぐためにリファクタリングする最善の方法は、module

module CommonMethods
   RECEIVER = "emails"
end

そしてあなたのクラスで:

class SomeClass
  include CommonMethods

  #do stuff
end

そうすれば、メーリング リストは 1 か所でのみ定義されます。

ここで、すべてのクラスに共通の他のメソッドを定義することもできます。

于 2013-03-28T19:37:00.453 に答える