8

我已按照 Spree 说明进行设置,并使其在开发模式下工作。我使用 Capistrano 将机架空间部署到生产服务器,但是相同的默认登录名(“spree@example.com”/“spree123”)不起作用。我在 Web 界面中创建了一个用户,但它当然没有管理员权限。

指南中没有任何内容考虑到这一点 - 当最初根本没有用户时,如何在生产中创建管理员用户?也许我部署不正确?我正在使用一个非常标准的 deploy.rb,必须有一些特定于狂欢的代码来设置它吗?

4

6 回答 6

19

rake spree_auth:admin:create如果您使用 spree_auth_devise,您可以运行

于 2013-03-02T00:38:35.987 回答
13

您可以从控制台将任何用户添加到 Spree 管理员角色rails c,执行以下操作:

user = user.find({your id})
user.spree_roles << Spree::Role.find_by_name(:admin)

在生产中,您可以这样运行控制台:

RAILS_ENV=production rails c
于 2012-11-07T21:36:22.270 回答
2

如果您使用 heroku 进行部署,请确保执行以下操作:

heroku run rake db:migrate
heroku run rake db:seed

种子将要求您为您的管理员帐户创建用户名和密码。

希望这有帮助。

于 2015-09-10T11:24:37.060 回答
1

如果您创建的用户是第一个用户,它实际上将具有管理员权限。

于 2012-04-30T21:05:10.130 回答
0

出色地,

我建议您从控制台手动创建用户,SSH 到服务器,导出 RAILS_ENV=production,rails c,然后找到您想要的用户(如果存在),然后手动更新密码,或者简单地创建新用户。您想要的,并且根据您的 Spree 版本,您只需手动将一条记录插入到其中 role_id 为 1 且 user_id 是您刚刚创建的用户的 id 的角色用户中。

这可能取决于您使用的版本。但我只是从控制台做,在我看来这更容易。

您也可以在自己的站点上注册一个帐户,然后转到控制台,找到该用户并添加角色。真的有一百万零一种方法可以做到这一点。

于 2012-04-28T14:26:47.343 回答
0

您可以使用以下命令

rails spree_auth:admin:create RAILS_ENV=production
于 2019-10-14T02:21:39.660 回答