Ruby on Rails: devise не отправляет электронную почту на почтовый адрес во время регистрации - PullRequest
0 голосов
/ 09 октября 2011

Во время регистрации я ввел имя пользователя, адрес электронной почты, пароль.

После нажатия кнопки регистрации, я проверил почту.

Но я не получил письмо от devise.

Как мне установить / настроить устройство для подтверждения регистрации по электронной почте?

Кто-нибудь, пожалуйста, помогите решить эту проблему.

Я искал в stackoverflow и пытался все, но не смог решить эту проблему.

http://0.0.0.0:3000/users/sign_out, я получаю «Ошибка маршрутизации» http://0.0.0.0:3000/users/sign_in, я получаю «Вы уже вошли в систему» ​​

маршруты рейка:

        new_user_session GET    /users/sign_in(.:format)       {:action=>"new", :controller=>"devise/sessions"}
            user_session POST   /users/sign_in(.:format)       {:action=>"create", :controller=>"devise/sessions"}
    destroy_user_session DELETE /users/sign_out(.:format)      {:action=>"destroy", :controller=>"devise/sessions"}
           user_password POST   /users/password(.:format)      {:action=>"create", :controller=>"devise/passwords"}
       new_user_password GET    /users/password/new(.:format)  {:action=>"new", :controller=>"devise/passwords"}
      edit_user_password GET    /users/password/edit(.:format) {:action=>"edit", :controller=>"devise/passwords"}
                         PUT    /users/password(.:format)      {:action=>"update", :controller=>"devise/passwords"}
cancel_user_registration GET    /users/cancel(.:format)        {:action=>"cancel", :controller=>"devise/registrations"}
       user_registration POST   /users(.:format)               {:action=>"create", :controller=>"devise/registrations"}
   new_user_registration GET    /users/sign_up(.:format)       {:action=>"new", :controller=>"devise/registrations"}
  edit_user_registration GET    /users/edit(.:format)          {:action=>"edit", :controller=>"devise/registrations"}
                         PUT    /users(.:format)               {:action=>"update", :controller=>"devise/registrations"}
                         DELETE /users(.:format)               {:action=>"destroy", :controller=>"devise/registrations"}
              home_index GET    /home/index(.:format)          {:controller=>"home", :action=>"index"}
                    root        /                              {:controller=>"home", :action=>"index"}

users_controller.rb =>

class UsersController < ApplicationController
  before_filter :authenticate_user!

  def show
    @user = User.find(params[:id])

  end  

end

Я сделал:

rails g devise:views

1 Ответ

1 голос
/ 09 октября 2011

для части электронной почты, проверьте настройки вашей почтовой программы.Вы даже можете отправить электронное письмо с помощью actionmailer?

для второй части, в процессе выхода из системы ссылка, которую вы используете, вызывает метод GET.Как видно из ваших маршрутов, для выхода вам нужен метод DELETE в вашей ссылке, который будет выглядеть следующим образом:

<%= link_to "Sign out", destroy_user_session_path, :method => :delete %>

Если вы хотите использовать GET специально для выхода, ознакомьтесь с инициализатором deviseфайл;где-то внизу вы увидите что-то о выходе из системы и методе по умолчанию :delete.поместите эту строку там:

config.sign_out_via = :get
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...