Я пытаюсь загрузить модули в некоторые классы ячеек почтового ящика, чтобы добавить дополнительные методы к этим классам. Иногда мои попытки работают, я обычно получаю ошибку «Неопределенный метод».Правильный способ включения модулей в классы gem для добавления методов в классы gem
Я попытался добавить модули в Lib каталога, а затем выдавать директиву загрузки в конфигурационном файле/application.rb так:
config.autoload_paths += %W(#{config.root}/lib)
Затем с помощью файла Инициализаторы/mailboxer.rb включить эти в соответствующие классы.
Я также попытался (внутри файла intitializer/mailboxer.rb) написать инструкции class_eval для самих классов и добавить методы через инструкции class_eval.
я в настоящее время сдачи модулей в директории приложения/хелперов и изменение имен модулей в MailboxerMessagesHelper, MailboxerConversationsHelper и т.д., а затем с помощью файла инициализации/mailboxer.rb включить их так:
Mailboxer::Message.include(MailboxerMessagesHelper)
Все эти попытки иногда срабатывают. Я видел ответы на подобные вопросы, заявляя, что это проблема среды разработки, поскольку rails перезагружается между каждым запросом. Однако, я думаю, проблема в том, что я делаю это неправильно.