繁体   English   中英

为什么我的 Django 登录可以在开发服务器上运行而不是在生产服务器上运行?

[英]Why does my Django login work on development server but not production server?

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

您的用户凭据存储在您的数据库中。 如果您在生产中拥有一个在线托管的不同数据库服务器,它将不会存储您在本地开发数据库中拥有的凭据。

所以你基本上必须使用 ssh 左右进入你部署的 Django 应用程序,然后再次在那里运行“createsuperuser”。 或者,您可以从本地数据库复制用户凭据并将它们推送到您的生产数据库; 但如果您不必与大量用户打交道,那么创建新的可能会更容易。

如果您在“默认设置”下使用 Django,则它使用的是 SQLite 文件(= 数据库)。 在在线托管的 Web 应用程序的生产中,它很可能是一个“真正的数据库服务器”(DBMS),如 PostgreSQL 或 MySQL 等,因为 SQLite 适合开发和测试,但难以并发用户访问数据。

如果您在生产服务器中配置了不同的数据库,则必须执行迁移和创建超级用户。 然后就可以登录了。

您当前的用户凭据保存在本地服务器中配置的数据库中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM