我已覆盖Devise' RegistrationsController
,以便在用户注册时发送欢迎电子邮件。尝试在发送之前使用Roadie
对电子邮件进行内联样式修改,但在调用Roadie的行上显示uninitialized constant Users::RegistrationsController::Roadie
:
app/controllers/users/registrations_controller.rb
class Users::RegistrationsController < Devise::RegistrationsController
def create
# Call the original Devise Create
super
if resource.save
## New version with inline css styling
## Things done in the hacky way
email = UserNotifier.send_signup_email(resource)
doc = Roadie::Document.new email.body.to_s
doc.add_css(Rails.application.assets["email"].to_s)
email.body = doc.transform
email.deliver
..
因此,当我在上面调用Roadie
时,而不是gem中的Roadie类,它会尝试调用Users::RegistrationsController::Roadie
。使用bundle show
进行检查时安装了Gem。一直在尝试查看设计代码,看看是否有类似的挖掘(我不确定在控制器中确实存在这样的事情)但是也没有运气。我想这应该是超级简单的,所以希望有人可以提供帮助!
当然..上面的代码在控制台中运行。 :)
谢谢!