У меня проблема с методом помощников, включенным в мою модель.
Я включаю своих помощников следующим образом:
class Booking < ApplicationRecord
include BookingsHelper
include PaymentsHelper
Оба из BookingsHelper
и PaymentsHelper
имеют функцию slack_notify
. Поэтому для вызова хорошей функции slack_notify
я вызываю эту функцию, как показано ниже:
BookingsHelper.slack_notify(self)
PaymentsHelper.slack_notify(requester.email, 'danger', 'booking:proceed_payment', e.message)
Когда я запускаю свой тест (с помощью rspec), я получаю:
Failure/Error: BookingsHelper.slack_notify(self)
NoMethodError:
undefined method `slack_notify' for BookingsHelper:Module
И язаметил, если я изменю: BookingsHelper.slack_notify(self)
на slack_notify(self)
, это работает, но назову slack_notify
в PaymentsHelper
, поэтому я не совсем понимаю, что происходит. И если я уберу PaymentHelper
, он назовет хороший
Если бы кто-то мог рассказать мне об этом поведении, мне было бы очень интересно понять, что происходит
Спасибо