class Devise::ConfirmationsController

Public Instance Methods

create() { |resource| ... } click to toggle source

POST /resource/confirmation

# File app/controllers/devise/confirmations_controller.rb, line 8
def create
  self.resource = resource_class.send_confirmation_instructions(resource_params)
  yield resource if block_given?

  if successfully_sent?(resource)
    respond_with({}, location: after_resending_confirmation_instructions_path_for(resource_name))
  else
    respond_with(resource)
  end
end
new() click to toggle source

GET /resource/confirmation/new

# File app/controllers/devise/confirmations_controller.rb, line 3
def new
  self.resource = resource_class.new
end
show() { |resource| ... } click to toggle source

GET /resource/confirmation?confirmation_token=abcdef

# File app/controllers/devise/confirmations_controller.rb, line 20
def show
  self.resource = resource_class.confirm_by_token(params[:confirmation_token])
  yield resource if block_given?

  if resource.errors.empty?
    set_flash_message(:notice, :confirmed) if is_flashing_format?
    respond_with_navigational(resource){ redirect_to after_confirmation_path_for(resource_name, resource) }
  else
    respond_with_navigational(resource.errors, status: :unprocessable_entity){ render :new }
  end
end

Protected Instance Methods

after_confirmation_path_for(resource_name, resource) click to toggle source

The path used after confirmation.

# File app/controllers/devise/confirmations_controller.rb, line 40
def after_confirmation_path_for(resource_name, resource)
  if signed_in?(resource_name)
    signed_in_root_path(resource)
  else
    new_session_path(resource_name)
  end
end
after_resending_confirmation_instructions_path_for(resource_name) click to toggle source

The path used after resending confirmation instructions.

# File app/controllers/devise/confirmations_controller.rb, line 35
def after_resending_confirmation_instructions_path_for(resource_name)
  is_navigational_format? ? new_session_path(resource_name) : '/'
end
translation_scope() click to toggle source
# File app/controllers/devise/confirmations_controller.rb, line 48
def translation_scope
  'devise.confirmations'
end