Array で行ったようにクラスを開く場合は、次のようにすることをお勧めします。
module MyNewMethodable
def my_new_method( *args )
fail ArgumentError, "not the right number of arguments"
#....
rescue => error
if MyNewMethodable::Error
puts "because then users of your module will know where to look for the fault"
else
raise error
end
end
class Error < StandardError; end
class ArgumentError < Error; end
end
class Array
include MyNewMethodable
end
Mongoid::Document でこれを行うには
class Mongoid::Document
include MyNewMethodable
end
でも、ここに書いてある
ドキュメントは Mongoid のコア オブジェクトであり、データベースに永続化されるオブジェクトには Mongoid::Document が含まれている必要があります。
したがって、定義したクラスに既に含まれています。したがって、モジュールではなく、クラスにモジュールを含めることをお勧めしますMongoid::Document
。例えば
class MyClass
include Mongoid::Document
include MyNewMethodable
end