Пользователь CRUD в веб-приложении, которое обрабатывает регистрацию и вход в Devise - PullRequest
0 голосов
/ 29 сентября 2011

В настоящее время я работаю над приложением, которое построено на рельсах 3.0.9.Внезапно клиент решил, что должно быть место для создания пользователя и его редактирования в разделе администратора сайта.

Теперь вот случай.Аутентификация и регистрация в веб-приложении обрабатываются devise.Если я пытаюсь реализовать пользовательский метод создания USER в моем контроллере, как я должен хэшировать пароль таким же образом, как это делает devise, чтобы сохранить его в базе данных.Это также относится и к редактированию уже зарегистрированных пользователей.

Я пытался найти решение, но безрезультатно.Любая помощь в решении этой проблемы будет принята.

1 Ответ

1 голос
/ 30 сентября 2011

Это просто. Вы можете настроить другой контроллер и форму, но настроить его на вашей модели пользователя. Ваша форма должна содержать :email, :password и :password_confirmation. Когда вы выполняете @user.save в действии create вашего контроллера, это разработает все требования хэширования под капотом.

Если вы хотите проверить, что ваше сохранение работает (только для тестирования), добавьте удар в конце, как @user.save! - это только для тестирования. Либо зайдите в консоль rails, и вы сможете увидеть вновь добавленные записи, либо подключите свой лог-файл.

Редактирование должно работать в том же ключе, и вы можете сделать @user.update_attribute() в вашем действии редактирования или @user.update_attributes(), если вы предпочитаете массовое назначение (это будет зависеть от любых ограничений attr_accessible в вашей модели)

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