2015-04-22 2 views
1

У меня есть сайт, в котором в настоящее время используется администратор rails, и это то, что я использовал для отслеживания пользователей и других показателей для сайта. Однако сегодня, когда я пошел на свой сайт, я неожиданно получил 500 внутренних ошибок при посещении/admin. Я не обновлял или не менял свой код через какое-то время, поэтому я не могу за всю жизнь понять, что происходит не так.Rails admin внезапно прекратил работать в производстве?

Здесь ошибка из журналов Heroku:

2015-04-22T04:38:57.431281+00:00 app[web.1]: Started GET "/admin" for 
108.162.249.51 at 2015-04-22 04:38:57 +0000 
2015-04-22T04:38:57.435082+00:00 app[web.1]: Completed 500 Internal Server Error in 1ms 
2015-04-22T04:38:57.436300+00:00 app[web.1]: 
2015-04-22T04:38:57.436302+00:00 app[web.1]: NoMethodError (undefined method `admin' for nil:NilClass): 
2015-04-22T04:38:57.436304+00:00 app[web.1]: config/initializers/rails_admin.rb:4:in `block (2 levels) in <top (required)>' 
2015-04-22T04:38:57.436306+00:00 app[web.1]: 
2015-04-22T04:38:57.434381+00:00 app[web.1]: Processing by RailsAdmin::MainController#dashboard as HTML 
2015-04-22T04:38:57.436305+00:00 app[web.1]: 

Он работает на местном уровне, так что я не знаю, что происходит. Кроме того, здесь код из этой ошибки:

#config/initializers/rails_admin.rb:4 
redirect_to main_app.root_path unless warden.user.admin 

Я проверил консоль, а также и что учетная запись администратора до сих пор активно

+0

ли вы посетить/админ без authentified может быть? – Typpex

+0

Нет, я определенно вошел в систему, если это то, что вы имеете в виду. – Harazzy

ответ

1

warden.user не создаются. Я хотел бы изменить код на

redirect_to main_app.root_path unless warden.user.try(:admin)

+0

ok есть ли причина, почему почему это просто внезапно перестает работать и почему эта строка кода работает над разработкой? Как и в предыдущей строке кода, работала нормально до сегодняшнего дня, и я не обновлял ее с тех пор. Я дам вам код, хотя – Harazzy

+0

Извините, я не знаю. 'NoMethodError (undefined method admin for nil: NilClass):' означает, что вы вызываете метод 'admin' на nil, и поэтому означает, что' warden.user' равен нулю, но почему это так, я не знать. –

+0

Да, это действительно сбивает с толку. Несмотря на это, ваш код работал - спасибо! – Harazzy

Смежные вопросы