我正在对我没有参与创建的Rails网站进行更改。此网站有一个供新用户注册的表单,该表单会向可以批准新帐户的管理员生成一封电子邮件。
当更改这些电子邮件的模板时,生成的电子邮件的内容不会更改。 如何更改电子邮件模板才能生效?
我是Rails的新手,所以我可能会遗漏一些明显的东西。我相信这些是相关文件:
应用程序/邮寄者/ user_mailer.rb
class UserMailer < ActionMailer::Base
default from: 'webmaster'
def new_user_notification_mailer(user, admin_email)
@user = user
mail(to: admin_email, subject: 'New User Registration')
end
end
应用程序/工人/ send_new_user_notification_worker.rb
class SendNewUserNotificationWorker
include Sidekiq::Worker
def perform(user_id)
user = User.find(user_id)
if user
User.is_admin.each do |admin|
if admin.email
UserMailer.new_user_notification_mailer(user, admin.email).deliver
end
end
end
end
end
应用程序/视图/ user_mailer文件/ new_user_notification_mailer.html.slim
doctype html
html
head
meta content='text/html; charset=UTF-8' http-equiv='Content-Type'
body
p
| New user
b #{@user.first_name} #{@user.last_name}
| has registered on the web site.
| You can
= link_to "Manage", edit_admin_user_url(@user)
| this account from admin panel.
我一直在重启服务器(工作副本):
RAILS_ENV=production bash -c 'bundle exec rake assets:clean; bundle exec rake bower:resolve; bundle exec rake assets:precompile'; kill `cat tmp/pids/server.pid`; nohup bundle exec rails s -e production -p 4000 1>> log/rails.sever.log 2>> log/rails.server.err.log &
答案 0 :(得分:1)
您还需要重新启动sidekiq进程。它将为sidekiq进程重新加载rails环境和代码更改。在此之后,您的更改应该反映出来。