我在具有多個子域的rails應用程序中使用了devise gem。每個子域由相應的控制器,它看起來是這樣處理的:Devise + Subdomain - 將用戶重定向到sign_in
class Subdomain1Controller < ApplicationController
before_filter :authenticate_user!
def index
end
end
通過上面的控制器實現,設計始終保持子域,同時重定向用戶到登錄頁面。在上述情況下,Devise會將用戶重定向到http://subdomain1.acmesite/users/sign_in而不是常見的sign_in Url。
這導致每個子域都有多個sign_in網址。
http://subdomain1.acmesite/users/sign_in
http://subdomain2.acmesite/users/sign_in
http://subdomain3.acmesite/users/sign_in
我想知道是否有可能重寫設計方法,從網址中排除子域部分,並保持前一頁的網址信息。更爲珍貴的是,我希望Devise將用戶重定向到特定的Url(如:http://acmesite/users/sign_in),而不考慮子域,並且在成功認證後,Devise應該將用戶返回給調用者子域+頁面。
不錯的提示。我正在嘗試這個... – alf 2012-08-19 22:26:58