1

最近、レールを 2.0.1 から 2.3.3 にアップグレードしましたが、それ以来、restful_authentication プラグインで不安定な動作が見られます。以下は、常にではありませんが、ときどき得た 3 つのエラーとスタック トレースです。これらは個別のリクエストで取得しますが、ここでのコード編集によりすべてがまとめられます。

git を使用して最新バージョンの restful-authentication プラグインを取得し、Rails アプリの vender/plugins の下にある古い restful-authentication フォルダーを削除し、git の最新のクローンからそのディレクトリをコピーしました。git を使用するのはこれが初めてで、ディレクトリを手動でコピーする以外に、restful-auth プラグインをアプリにインストールする適切な方法がわかりませんでした。

Rails 2.0.1 から 2.3.3 へのアップグレード後、git から最新のものを取得する前に、「AuthenticatedSystem のコピーが削除されました...」というエラーが表示されました。他の 2 つのエラーは、git から最新の restful_authentication を取得して以来の新しいものです。

ArgumentError (A copy of AuthenticatedSystem has been removed from the module tree but is still active!):
  lib/authenticated_system.rb:97:in `login_from_session'
  lib/authenticated_system.rb:12:in `current_user'
  lib/authenticated_system.rb:6:in `logged_in?'
  lib/authenticated_system.rb:34:in `authorized?'
  lib/authenticated_system.rb:52:in `login_required'
  C:/ruby/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
  C:/ruby/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'


TypeError (can't dup NilClass):
  lib/authenticated_system.rb:97:in `login_from_session'
  lib/authenticated_system.rb:12:in `current_user'
  lib/authenticated_system.rb:6:in `logged_in?'
  lib/authenticated_system.rb:34:in `authorized?'
  lib/authenticated_system.rb:52:in `login_required'
  C:/ruby/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
  C:/ruby/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
  C:/ruby/lib/ruby/1.8/webrick/server.rb:173:in `start_thread'


SystemStackError (stack level too deep):
  lib/authenticated_system.rb:17:in `current_user='
  lib/authenticated_system.rb:97:in `login_from_session'
  lib/authenticated_system.rb:12:in `current_user'
  lib/authenticated_system.rb:6:in `logged_in?'
  lib/authenticated_system.rb:34:in `authorized?'
  lib/authenticated_system.rb:52:in `login_required'
  C:/ruby/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
  C:/ruby/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
  C:/ruby/lib/ruby/1.8/webrick/server.rb:173:in `start_thread'
4

1 に答える 1

0

これらのメソッドを実行するために必要なライブラリが見つからないようです。./script/plugin install -f を実行して再インストールを強制できますか?

于 2009-12-09T16:25:24.170 に答える