Вы можете посмотреть на это:
http://www.ruby -doc.org / docs / ProgrammingRuby / html / tut_modules.html
Вы можетевключите модуль в класс и тем самым сделайте методы этого модуля доступными для этого класса.
Если вы включите Enumerable в модель Rails, то его методы будут доступны для этой модели.Но так как методы Enumerable уже доступны для определенных типов объектов в вашем Rails-проекте, и эти объекты доступны для создания экземпляров из вашей модели, я не понимаю, почему вы можете это сделать, потому что методы Enumerable отлично работают дляцели, для которых они были спроектированы.
В любом случае, вы можете обнаружить, что вам может подойти одно из следующих действий:
- использовать метод суммы Activerecord
- преобразовать ваш объект вмассив, и используйте метод суммы Enumerable
- напишите свой собственный метод, но не называйте его sum, потому что вы не хотите путать себя.
Попробуйте закомментировать второйПоявление модуля Neuone в следующем фрагменте, и посмотрим, что произойдет.Затем попробуйте закомментировать метод Charlie.one и посмотрите, что произойдет.
module Neuone
def one
'neuone one'
end
def two
'neuone two'
end
end
module Neuone
def two
'neuone two two'
end
end
Класс Чарли включает Neuone
def one
'charlie one'
end
end
c = Charlie.new p c.one p c.two