2015-08-28 103 views
0

我正在对Rails站点进行更改,而我并未参与创建。这个网站有一个新用户注册的表单,它会向管理员发送一封电子邮件,以便批准新帐户。Rails ActionMailer模板更新没有生效

当这些电子邮件的模板发生更改时,生成的电子邮件的内容不会更改。 如何更改电子邮件模板才能生效?

我是新来的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。苗条

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. 

我一直在重新启动服务器(工作c opy)与此:

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 & 

回答

1

您还需要重新启动您的sidekiq过程。它将重新加载您的rails环境和sidekiq进程的代码更改。在此之后,您的更改应该反映出来。