2016-09-28 3 views
0

Я просматриваю учебник Ruby on Rails и не могу получить предварительный просмотр моего UserMailer.Проблемы с просмотром UserMailer Ruby on Rails

Ошибка, которую я получаю, заключается в том, что когда я иду на сервер, он говорит Mailer preview 'user_mailer/account_activation' not found.

Я следую коду шаг за шагом, но он не работает. Вот что у меня есть.

приложения/почтовые программы/user_mailer.rb класса UserMailer < ApplicationMailer

def account_activation(user) 
    @user = user 
    mail to: user.email, subject: "Account activation" 
    end 

тест/почтовые программы/превью/user_mailer_previews

class UserMailerPreview < ActionMailer::Preview 

    # Preview this email at 
    # http://localhost:3000/rails/mailers/user_mailer/account_activation 
    def account_activation 
    user = User.first 
    user.activation_token = User.new_token 
    UserMailer.account_activation(user) 
    end 

Config/среды/development.rb

config.action_mailer.raise_delivery_errors = true 
    config.action_mailer.delivery_method = :test 
    host = 'localhost:3000' 
    config.action_mailer.default_url_options = { host: host, protocol: 'https' } 

Я прочитал и перечитал код на сайте https://www.railstutorial.org/book/account_activation и попытался изменить ситуацию, но не повезло

Спасибо заранее!

Редактировать: У меня на самом деле уже есть вид, извините, должен был включить его раньше.

приложение/просмотров/user_mailer/account_activation.html.erb

<h1>Sample App</h1> 

<p>Hi <%= @user.name %>,</p> 

<p> 
    Welcome to the Sample App! Click on the link below to activate your account: 
</p> 

<%= link_to "Activate", edit_account_activation_url(@user.activation_token, 
                email: @user.email) %> 

ответ

0

Кроме того, необходимо создать хотя бы один view template для почтовой программы под app/views/user_mailer.

В своем простейшем случае это может быть файл с именем account_activation.text.erb, содержащий статический текст, который станет телом письма.

+0

У меня на самом деле было представление. Я опубликовал html-версию, но есть и текст. – Sam

1

К чему вы клоните? У меня была такая же проблема, и это было из-за того, что я покидал часть «рельсов» URL-адреса (потому что я думал, что эта часть относится к конкретной среде разработки учебного автора (это не так)).

Попробуйте перейти на http://localhost:3000/rails/mailers, в котором должны быть перечислены ссылки на ваши превью.

Смежные вопросы