2014-10-04 39 views
0

我與(自學)軌道玩弄,我使用下面的代碼重定向在用戶登錄到一個頁面,同時允許他們仍然前往,並使用設計

class HomeController < ApplicationController 

    def index 
     if user_signed_in? 
      redirect_to :controller=>'dashboard', :action => 'index' 
     end 
    end 
end 

作爲的結果網頁上面的代碼在用戶登錄時會被重定向到「儀表板」(很棒),但他們無法訪問主頁。我怎樣才能解決這個問題 ?我還是很新的ruby/rails,所以仍然適應語法等。

謝謝。

回答

0

這重定向所有登錄的用戶只登錄後到儀表板指數:

class ApplicationController < ActionController::Base protect_from_forgery
def after_sign_in_path_for(resource) sign_in_url = url_for(:action => 'index', :controller => 'dashboard') end end

0

你做錯了。您正在將登錄用戶的所有請求重定向到儀表板頁面。因此,任何登錄用戶嘗試訪問主頁時都會被重定向到儀表板頁面。你必須做的是,當用戶通過設計登錄時,你將它重定向到儀表板。請檢查this

示例代碼:

def after_sign_up_path_for(resource) 
    signed_in_root_path(resource) 
end 

希望它能幫助。

相關問題