Как создать первого (Admin) пользователя (CanCan и Devise)?
Я сделал аутентификацию в своем приложении Rails 3 под учебник Тони
Мне не нужны публичные регистрации в моем приложении, просто для создания новых пользователей с учетной записью администратора, но я не могу создать учетную запись администратора вручную, потому что в таблице Users есть зашифрованный пароль и соль, которые должны быть сгенерированы, и Я не знаю, как: |
Ответы
Ответ 1
Вы можете сделать это с консоли рельсов. Из командной строки перейдите в каталог вашего приложения rails и введите rails console
. Затем введите следующий код для создания пользователя:
user=User.create!(:email=>'[email protected]',:username=>'test',:password=>'password')
Это создаст объект пользователя (если ваш ресурс разработки называется User). Теперь вы можете использовать только что созданный пользовательский объект для установки привилегий администратора.
Ответ 2
В текущем состоянии что-то вроде этого (ваши данные могут быть разными) в файле seeds.rb для создания моего пользователя admin для Devise.
User.new({ :email => '[email protected]', :password => 'password', :password_confirmation => 'password'}).save
Вы можете выполнить его с помощью rake db:seed
в окне терминала.
Ответ 3
Кроме того, если вы используете подтверждение и хотите пропустить требование для получения подтверждения по электронной почте при создании новых учетных записей, вы можете сделать что-то вроде этого:
newuser = User.new({ :email => '[email protected]',
:password => 'password',
:password_confirmation => 'password'})
newuser.skip_confirmation!
newuser.save
Это полезно, если создаваемые учетные записи предназначены для доверенных пользователей или при создании тестовых учетных записей.