include
複数のミックスインで使用した場合のステートメントの動作を理解しようとしています。つまり、私はこれらのステートメントを持っています:
class Article < ActiveRecord::Base
include DoubleIncludedModule
include AModule
# ...
end
module AModule
include DoubleIncludedModule
# ...
end
module DoubleIncludedModule
# ...
end
クラスには何回DoubleIncludedModule
含まれArticle
ますか?つまり、DoubleIncludedModule
(最初にArticle
クラスにAModule
含まれ、次にArticle
クラス自体に含まれる)の「後続の」包含は、Rubyによって自動的に処理される「二重包含」の問題になるのでしょうか、それともDoubleIncludedModule
(誤って)2回含まれるのでしょうか。
DoubleIncludedModule
もちろん、モジュールを1回だけ含めたいと思います。どうすれば(おそらくRuby on Railsメソッドを使用して)それを適切な方法にすることができますか?