我无法将EmailCallback::MailgunEmail < SpecialDelivery::Callback
课程纳入执行范围。我的问题是我不清楚在哪里以及如何创建和调用自述文件中提到的新类。目前,当我使用所有正确的参数向mount SpecialDelivery::Engine => "/email_events"
端点发出POST请求时,它由SpecialDelivery::EventsController#create
处理。实例化对象但不保存。
供参考; gem自述文件部分:https://github.com/vigetlabs/special-delivery#your-custom-callback-class-file
我运行了未记录的rake任务(special_delivery:install:migrations)并迁移到新的迁移文件。
我目前有:
# /lib/email_callback/mailgun_email.rb
module EmailCallback
class MailgunEmail < SpecialDelivery::Callback
def opened
require 'pry'; binding.pry
end
def create
require 'pry'; binding.pry
end
end
end
注意:我试图点击pry调试器来确认请求是否符合相应的方法并查看我必须使用的内容。
提前感谢您的帮助。
答案 0 :(得分:1)
在调用包裹电子邮件的#special_delivery
方法时,应引用新类。
def send_your_email(user)
special_delivery(
callback_class: EmailCallback::MailgunEmail, # Here!
callback_record: user
) do
mail(to: user.email, subject: 'Hello from Kit!')
end
end
如果这对你有用,请告诉我。如果不是,我们可以更深入地潜水,并为您整理出来。