我的設計寶石出現問題。當我與用戶註銷時,devise將我的用戶從我的mysql數據庫中刪除。我昨天首先發現了這個錯誤,然後纔開始工作。我不記得什麼註冊和登錄也是可能的。Rails devise在註銷後從數據庫中刪除用戶
用戶控制器
class UsersController < ApplicationController
def show
@user = User.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @user }
end
end
def destroy
@user = User.find(params[:id2])
@user.destroy
respond_to do |format|
format.html { redirect_to root_url}
end
end
end
註銷-Link的
<%= link_to " Logout", destroy_user_session_path(:id2 => current_user.id), :class => "btn btn-danger icon-share-alt ",:style=>"font-family: FontAwesome;font-weight: bold;color:black", :method => :delete %>
用戶模型
class User < ActiveRecord::Base
rolify
belongs_to :ressourcen
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
attr_accessible :vorname, :nachname, :email, :password, :password_confirmation, :roleid,:id
validates :email, :uniqueness => true
不幸的是,這也不起作用。我也認爲我沒有會話控制器...只是一個User_controller。當我使用不帶參數的「destroy_user_session_path」時,控制器如何找到用戶? – user3250164
看一下[會話控制器源代碼](https://github.com/plataformatec/devise/blob/master/app/controllers/devise/sessions_controller.rb)。它調用[sign_out here](https://github.com/plataformatec/devise/blob/master/lib/devise/controllers/sign_in_out.rb)。 Devise知道current_user – mikeorr85