Railsで
SubdomainFuとRestfulAuthenticationを組み合わせて使おうとしたら、ログイン後のリダイレクトの処理(redirect_back_or_default)でサブドメインが渡らないことに気がつきました。(あたりまえですが・・・。)
とりあえずの処置として、AuthenticatedSystemのstore_locationを書き直すことにしました。RestfulAuthenticationでは、ユーザーが認証が必要なページにアクセスする際にstore_locationを呼び出して、ログイン処理後のリダイレクト先を保存するので、このタイミングにサブドメインも(というかURL丸ごと)保存することにしました。
def store_location
session[:return_to] = request.protocol + request.env['HTTP_HOST'] + request.request_uri
end
def redirect_back_or_default(default)
redirect_to(session[:return_to] || default)
session[:return_to] = nil
end
意外とサブドメインを扱うのは面倒です。。。