![](/img/trans.png)
[英]ActionMailer with Rails: Missing template user_mailer/welcome with "mailer"
[英]Missing template user_mailer/registration_confirmation with “mailer” in Rails 4
我正在學習使用Railscast#206發送電子郵件。 本教程使用Rails 3,但我使用的是Rails 4。
應用程序/郵寄/ user_mailer.rb:<%= @user.name %>,
Thank you for registering!
Edit profile: <%= edit_user_url(@user) %>
應用程序/視圖/ user_mailer文件/ registration_confirmation.text.rb:
<p><%= @user.name %>,</p>
<p>Thank you for registering!</p>
<p><%= link_to "Edit profile", edit_user_url(@user) %></p>
app / views / user_mailer / registration_confirmation.html.rb:
class UsersController < ApplicationController
......
def create
@user = User.new(user_params)
if @user.save
sign_in @user
flash[:success] = "Welcome"
UserMailer.registration_confirmation(@user).deliver
redirect_to @user
else
render 'new'
end
end
......
end
應用程序/控制器/ users_controller.rb:
class UsersController < ApplicationController ...... def create @user = User.new(user_params) if @user.save sign_in @user flash[:success] = "Welcome" UserMailer.registration_confirmation(@user).deliver redirect_to @user else render 'new' end end ...... end
當用戶注冊時,他應該在理論上收到一封電子郵件,但事實證明:
Missing template user_mailer/registration_confirmation with "mailer". Searched in: * "user_mailer"
registration_confirmation.html.rb? 視圖文件應以erb結尾。
將視圖文件名重命名為:
registration_confirmation.html.erb # HTML format
registration_confirmation.text.erb # Plain text format
看起來問題是文件擴展名,是erb
而不是rb
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.