Недавно я обновил свои рельсы с 2.0.1 до 2.3.3 и с тех пор видел неустойчивое поведение с плагином restful_authentication. Ниже приведены 3 ошибки и трассировки стека, которые я получил некоторое время, но не все время. Я получаю их по отдельным запросам, но редактирование кода здесь объединяет их все.Как восстановить или переустановить плагин restful_authentication?
Я получил последнюю версию плагина с надежной аутентификацией с git, а затем удалил старую папку проверки подлинности под vender/plugins в моем приложении rails и скопировал ее в этом каталоге из последнего клона из git. Это был мой первый раз с использованием git, я не знал, как правильно установить плагин restful-auth в мое приложение, помимо ручного копирования каталогов.
Я получаю сообщение об ошибке «копия AuthenticatedSystem была удалена ...» после обновления с rails 2.0.1 до 2.3.3, но до получения последней из git. Другие 2 ошибки являются новыми с момента получения последней restful_authentication из git.
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'
Я сделал это. По-прежнему появляется ошибка «TypeError (не может дублировать NilClass)». Хотя не было никакого выхода из команды script-plugin install -f, поэтому я не знаю, правильно ли она была установлена или нет. – user26270