我試圖在現有的Rails3項目中實現Devise。我已經創建了用戶表及其路線和模型。我能夠創建一個帳戶,並登錄,但如果我去/用戶/ SIGN_OUT那麼它拋出一個錯誤:RoR - 設計 - 退出錯誤 - 參數數量錯誤
ArgumentError in Devise/sessionsController#destroy
wrong number of arguments (1 for 0)
框架跟蹤的頂部有:
devise (1.2.1) app/controllers/devise/sessions_controller.rb:21:in `signed_in?'
devise (1.2.1) app/controllers/devise/sessions_controller.rb:21:in `destroy'
我的用戶模型具有以下中它:
# Setup accessible (or protected) attributes for your model
attr_accessible :email, :password, :password_confirmation, :remember_me
# Include default devise modules. Others available are:
# :token_authenticatable, :encryptable, :confirmable, :lockable, :timeoutable and
devise :database_authenticatable, :registerable, :omniauthable,
:recoverable, :rememberable, :trackable, :validatable
我不知道,我應該尋找添加/刪除論據,SIGN_OUT行動。任何幫助,將不勝感激。
我看了看21行,它具有如下:
def destroy
signed_in = signed_in?(resource_name)
Devise.sign_out_all_scopes ? sign_out : sign_out(resource_name)
...
end
所以這是一個設計缺陷?或者我沒有設置正確的東西?
你的sessions_controller行21中有什麼? – corroded 2011-04-03 18:42:06
你的Devise.setup ....代碼是什麼樣子的? – 2011-04-03 18:44:27
@james我在devise.rb中改變的唯一一件事是添加config.omniauth:twitter ...和一個用於:facebook。即使我評論它們仍然會拋出錯誤。 – RyanJM 2011-04-03 18:46:57