无法分配用户访问级别
Trouble assigning user access levels
我正在学习 this 教程,因为我想学习如何从头开始创建具有单一角色(每个用户都有一个角色)的用户授权,而不是使用像 rolify 这样的 gem为我做这一切,但我挂断了分配用户访问级别。
当我在控制台中键入 erin = User.find(9) 时,它会找到我的 test@test.com 用户。我尝试发出erin.admin!命令,但它会引发有关密码的错误? (ActiveRecord::RecordInvalid:验证失败:密码不能为空)。
我还尝试了 erin.access_level = "admin" 其中 returns "admin" 当我还在控制台中但当我退出控制台时不再存在,启动 rails 服务器并尝试在我的应用程序中测试我的 test@test.com 用户。
是否有任何其他方式来分配访问级别?我只是做错了吗?
无法保存用户记录,因为存在需要密码的验证。不知道密码的格式有没有特殊规定,不过大家可以很方便的设置一个密码,这样就可以保存用户了:
user = User.find(9)
user.password = 'Test1234'
user.password_confirmation = 'Test1234' # you might need this as well
user.access_level = 'admin'
user.save #=> true
如果 user.save
returns 为假,请检查 user.errors
是否存在任何其他会导致记录无法保存的验证错误。
对于问题的第二部分,我的数据库似乎没有部署到 Heroku,这是因为我在开发数据库而不是生产数据库中工作。
为此,我 运行 "heroku run rails console" 然后按照上述步骤授予用户管理员访问级别。更多信息:https://devcenter.heroku.com/articles/getting-started-with-rails4#console
我正在学习 this 教程,因为我想学习如何从头开始创建具有单一角色(每个用户都有一个角色)的用户授权,而不是使用像 rolify 这样的 gem为我做这一切,但我挂断了分配用户访问级别。
当我在控制台中键入 erin = User.find(9) 时,它会找到我的 test@test.com 用户。我尝试发出erin.admin!命令,但它会引发有关密码的错误? (ActiveRecord::RecordInvalid:验证失败:密码不能为空)。
我还尝试了 erin.access_level = "admin" 其中 returns "admin" 当我还在控制台中但当我退出控制台时不再存在,启动 rails 服务器并尝试在我的应用程序中测试我的 test@test.com 用户。
是否有任何其他方式来分配访问级别?我只是做错了吗?
无法保存用户记录,因为存在需要密码的验证。不知道密码的格式有没有特殊规定,不过大家可以很方便的设置一个密码,这样就可以保存用户了:
user = User.find(9)
user.password = 'Test1234'
user.password_confirmation = 'Test1234' # you might need this as well
user.access_level = 'admin'
user.save #=> true
如果 user.save
returns 为假,请检查 user.errors
是否存在任何其他会导致记录无法保存的验证错误。
对于问题的第二部分,我的数据库似乎没有部署到 Heroku,这是因为我在开发数据库而不是生产数据库中工作。
为此,我 运行 "heroku run rails console" 然后按照上述步骤授予用户管理员访问级别。更多信息:https://devcenter.heroku.com/articles/getting-started-with-rails4#console