The method attempts to find a user by its email. If a record is found, it sends new password instructions. If no user is found, it returns a new user with an “email not found” error. Attributes must contain the user email.
Recoverable is available to you if it’s included in your User model: ruby class User < ActiveRecord::Base devise :database_authenticatable, :timeoutable, :registerable, :recoverable, :rememberable, :trackable ...
The emails for Rails Girls LA is railsgirlsla@gmail.com
How to:
Create a method in your controller that will call send_reset_password_instructions. In users_controller.rb, add: ruby def generate_new_password_email user = User.find(params[:user_id]) user.send_reset_password_instructions flash[:notice] = "Reset password instructions have been sent to #{user.email}." redirect_to admin_user_path(user) end
Create a route in routes.rb: ruby namespace :admin do resources :users, only: :show do post :generate_new_password_email end end
Create a simple form on your user’s show page in the admin. In show.html.erb, add: ruby <%=form_tag(admin_user_generate_new_password_email_path(@user)) do %> <%=submit_tag 'Send Reset Password Email', class: 'button', :confirm => 'Are you sure you want to email reset password instructions?' %> <% end %>
That’s it! If you want to test this in your development environment, you can configure your SMTP settings to send an email locally. At the bottom of config/environments/development.rb, add: ruby config.action_mailer.default_url_options = { :host => 'localhost:3000' } config.action_mailer.delivery_method = :smtp config.action_mailer.perform_deliveries = true config.action_mailer.raise_delivery_errors = true config.action_mailer.default :charset => "utf-8" ActionMailer::Base.smtp_settings = { :address => "smtp.gmail.com", :port => 587, :authentication => :plain, :domain => 'gmail.com', :user_name => 'username@gmail.com', :password => 'secret' }
Restart your local server.
From your user page in the admin panel, you can now hit the “Send Reset Password Email” button, and a new reset password email will be sent to the user.
https://www.codeschool.com/blog/2012/10/02/re-generating-forgot-password-emails-with-devise/
Solution:
The emails for Rails Girls LA is railsgirlsla@gmail.com
How to: