devise - Настройка пользовательских страниц редактирования - PullRequest
14 голосов
/ 05 ноября 2010

в настоящее время с devise & rails 3 есть страница редактирования пользователя на одну страницу: / users / edit

Я хотел бы разделить это на разделы для лучшего пользовательского интерфейса, что-то вроде:

/account/settings
/account/password
/account/notices
/account/disable

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

С помощью устройства devise для этого требуется новый контроллер илиможно ли все это обрабатывать с помощью маршрутов?

Кроме того, в настоящее время страница редактирования находится здесь: app / views / devise / registrations

Вы рекомендуете добавлять эти страницы туда?Или в / app / views / users?

Спасибо

1 Ответ

15 голосов
/ 12 ноября 2010

У вас есть несколько вариантов здесь. Я бы выбрал первый вариант, так как он кажется более естественным для того, что вы пытаетесь сделать.

  1. Переопределите контроллер регистрации devise, унаследовав от него, и обновите соответствующие представления и маршруты. Вот что говорит об этом сайт устройства :

    Настройка контроллеров

    Если настройки при просмотре Уровень не достаточно, вы можете настроить каждый контроллер, следуя этим шаги:

    1) Создайте свой собственный контроллер, для Пример: Admins :: SessionsController:

    class Admins :: SessionsController

    2) Скажите роутеру использовать это Контроллер:

    devise_for: администраторы,: контроллеры => {: сеансы => "администраторы / сеансы"}

    3) И так как мы изменили контроллер не будет использовать представления "devise / session", поэтому помните скопировать "devise / session" в "Администратор / сессии".

    Помните, что Devise использует вспышку сообщения, чтобы пользователи знали, если войти был успешным или неудачным. разрабатывать ожидает, что ваше приложение позвонит "вспышка [: уведомление]" и "вспышка [: предупреждение]" при необходимости.

  2. Используйте пользовательский контроллер и добавляйте туда действия с соответствующими представлениями (не мой выбор)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...