簡體   English   中英

在Rails 4中缺少帶有“郵件程序”的模板user_mailer / registration_confirmation

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM