Аутентификация активного администратора конфликтует с аутентификацией пользователя

Active Admin - это драгоценный камень, используемый для создания панели администратора в вашем приложении. Он использует Devise для входа в систему и создает отдельную модель admin_user для администраторов. Мое приложение уже использует devise и имеет своих пользователей в качестве модели user . С тех пор, как я начал использовать активный гем администратора, в моем файле маршрутов следующая строка продолжает преобразовываться в home # index, а не в панель управления users #, даже когда мой пользователь вошел в систему. Раньше это работало нормально, когда пользователи, вошедшие в систему, передавались пользователям #dashboard в качестве корневого URL.

root :to => 'users#dashboard', :constraints => lambda {|r| r.env["warden"].authenticate? }
root :to => 'home#index'

Что происходит, так это то, что .authenticate? проверяет, входит ли admin_user (принадлежащий активному администратору), но не мой пользователь Модель, которую мне нужно проверить, поэтому, когда я вхожу в активный интерфейс администратора, корень моего сайта становится users # dashboard вместо этого без проверки, авторизован ли пользователь или нет. Как сделать .аутентифицировать? проверить, находится ли пользователь , а не admin_user ?

Любая помощь или подсказки будут очень признательны

11
задан alik 4 October 2011 в 00:31
поделиться