(続)Ruby On RailsにLoginEngineのソースを直しました
(続)Ruby On RailsにLoginEngineのソースを直しました
実は続きがありました。
LoginEngineではWebページにリクエストがあったときに
一旦リクエストのURLをセッションに格納して
ログインページに飛ばした後に、
ログインに成功すると、セッションに格納してあるURLを取得してリダイレクトする仕組みになっています。
ところが、この処理がうまく行かずにエラーが発生していることが判明しました。
(いや、結構前から知っていて直していたけど書き忘れていました。)
原因は
/vender/plugins/login_engines/lib/login_engine/authenticated_system.rb
の80行目
def redirect_to_stored_or_default(default=nil)
if session['return-to'].nil?
redirect_to default
else
redirect_to_url session['return-to']
session['return-to'] = nil
end
end
どうもここがエラーになります。
どうもredirect_to_urlはRails2.0で消滅したメソッドのようです。
と言うわけで、これをredirect_toに置き換えます。
def redirect_to_stored_or_default(default=nil)
if session['return-to'].nil?
redirect_to default
else
redirect_to session['return-to']
session['return-to'] = nil
end
end
これで動くようになりました。
########################################################
◎LoginEngineの導入
其の壱 http://d.hatena.ne.jp/sai-ou89/20080401
其の弐 http://d.hatena.ne.jp/sai-ou89/20080402
其の参 http://d.hatena.ne.jp/sai-ou89/20080403
其の四 http://d.hatena.ne.jp/sai-ou89/20080404
其の五 http://d.hatena.ne.jp/sai-ou89/20080604
########################################################