2010-10-07 20 views
12

Я реализовал приложение Devise в Rails 3, и мне нужно, чтобы пользователи-пользователи могли управлять пользователями. Пользователи не регистрируются, поэтому администратор должен создавать учетные записи. Какой был бы лучший способ сделать это?Управление учетными записями пользователей с Rails 3 и Devise

Не кажется очень сухим, чтобы создать свой собственный UsersController, когда Devise уже предоставляет Devise::RegistrationController, но я не вижу никаких других параметров.

ответ

13

я решил создать свою собственную UsersController вдоль стороны RegistrationController. На самом деле имеет смысл иметь собственный контроллер RESTful для администрирования. Задача не разрабатывать пользовательские записи и поддерживать связанные с ними административные поля. Это, в конце концов, структура аутентификации. Кажется правильным, чтобы он делал то, для чего он предназначен. Вы должны создать свою собственную модель пользователя по какой-либо причине.

2

Вы можете переопределить регистрационный контроллер, чтобы предоставить необходимую вам функциональность. Проверьте первый ответ здесь: Override devise registrations controller

+0

Не протестировали это, но вы можете переопределить регистрационный контроллер и просто поместить в него файл before_filter, который гарантирует, что администратор выполнит запрос. – pushmatrix

+0

На самом деле у меня есть свой собственный регистрационный контроллер для авторизации. Моя проблема заключается в том, что при вызове sign_up в качестве другого пользователя вы мгновенно вошли в систему как пользователь (например, это регистрация пользователя). Если я собираюсь создавать все свои собственные методы, в любом случае, я бы предпочел, чтобы у меня был только собственный UserController –

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