2012-06-10 60 views
0

我有一個網站和一個Rails應用程序。未登錄時顯示網站,登錄時顯示應用程序

當用戶訪問網站時,我想檢查他們是否已登錄。 如果是,我想將它們發送到Rails應用程序。如果他們沒有登錄,我想將他們發送到網站。

pivotaltracker.com有這種類型的行爲。

這是什麼最好的方法呢?我認爲Rails應用程序需要做登錄檢查,所以看起來用戶應該總是先發送到那裏,如果沒有登錄就重定向到網站?

但是看起來結果往往是顯示網站,所以看起來這樣會增加額外的一步,並減緩了大多數用戶的操作。但我不知道該怎麼做。

任何想法?

回答

0

檢查網站的Web服務器層的應用程序會話cookie,如果他們有,請將它們發送到應用程序,如果沒有,請繼續訪問網站。

當然,如果有什麼異味,應用程序將執行實際檢查來查找登錄用戶並重定向到網站。

是的,它更復雜。或者,在測量它們之前,不要試圖優化它們。 「這似乎」意味着你沒有檢查數字更經常發生的事情。 (。這掉了snarkier比預期我想提醒你「過早優化」,而不是試圖在你喊吧)

0

如果你使用的設計,你可以:

Dashboard::Application.routes.draw do 

    devise_for :users  
    authenticated :user do 
    resources :stuffs 
    root to: "home#dashboard" 
    end 

    root to: "home#website" 
end 

這將向用戶顯示儀表板是否已登錄,如果沒有,則顯示「網站」。然後,您可以顯示該網站,或重定向到該網站。

+0

在網站在WordPress的情況下,home#網站會做什麼,重定向? – 99miles

+0

是的,它會重定向。 –