python—为什么我的django登录在开发服务器上工作,而在生产服务器上不工作?

bvhaajcl  于 2021-09-08  发布在  Java
关注(0)|答案(2)|浏览(253)

我有一个问题,我可以登录到django通过我的开发服务器,但它不会在生产服务器上工作。我正在使用heroku进行部署。所有页面都正常工作,但我无法登录到django数据库。

mgdq6dx1

mgdq6dx11#

您的用户凭据存储在数据库中。如果您在生产环境中有另一个联机托管的数据库服务器,它将不会存储您在本地开发数据库中的凭据。
因此,您基本上必须使用ssh或其他方式进入已部署的django应用程序,然后再次运行“createsuperuser”。或者,您可以从本地数据库复制用户凭据,并将其推送到生产数据库中;但是如果你不需要和很多用户打交道的话,仅仅创建一个新的可能会更容易。
如果您使用带有“默认设置”的django,则它使用的是sqlite文件(=数据库)。在在线托管的webapp的生产中,它很可能是一个“真正的数据库服务器”(dbms),如postgresql或mysql等,因为sqlite适合开发和测试,但难以实现用户对数据的并发访问。

t0ybt7op

t0ybt7op2#

如果在生产服务器中配置了不同的数据库,则必须执行迁移和createsuperuser。然后你就可以登录了。
当前用户凭据保存在本地服务器中配置的数据库中。

相关问题