Development / Users / Validation Scheme
Cant Confirm your email address with the program.
route.rb
devise_for :users, :controllers => { :sessions => "users/sessions" ,:omniauth_callbacks => "users/omniauth_callbacks" } do
post "users/confirmation", :to => "devise/confirmations#create"
get "users/confirmation/new", :to => "devise/confirmations#new", :as => "new_confirmation"
get "users/confirmation", :to => "devise/confirmations#show"
end
resources :pensioners #, :only => [:index, :destroy, :new]
resources :users #, :only => [:index, :destroy, :new]
heroku run rake routes
....
user_confirmation POST /users/confirmation(.:format) devise/confirmations#create
new_user_confirmation GET /users/confirmation/new(.:format) devise/confirmations#new
GET /users/confirmation(.:format) devise/confirmations#show
....
But when I make a request
GET /users/confirmation?confirmation_token=BeELxDDq9sxpseLh8Rdn
I am getting 404 error
The page you were looking for doesn't exist.
You may have mistyped the address or the page may have moved.
Where am I going wrong?
Model
class User < ActiveRecord::Base
devise .... , :confirmable
Migration
class AddConfirmableToUsers < ActiveRecord::Migration
def up
add_column :users, :confirmation_token, :string
add_column :users, :confirmed_at, :datetime
add_column :users, :confirmation_sent_at, :datetime
add_index :users, :confirmation_token, :unique => true
User.update_all(:confirmed_at => Time.now)
end
....
+3
source to share
2 answers
In Rails 4.2.10 with Devise 4.4.3, this worked for me:
devise_for :users, controllers: { registrations: 'registrations',
sessions: 'sessions',
confirmations: 'confirmations' }
devise_scope :user do
# custom routes...
get 'confirmation/sent' => 'confirmations#sent'
patch 'users/confirmation' => 'confirmations#create'
end
0
source to share