如何将本地数据库更改为云端(Django)

How to change the database local to be in a cloud (Django)

我在 django 框架中写了一个项目,我使用本地数据库 SQLite,现在我想将它上传到云端,以便与我一起工作的其他人可以访问数据库,即当我创建一个用户时,该用户将和我的同事一起存在。

也许有人有关于如何在不修改数据库的情况下执行此操作的指南,这样我就不必修改其余代码了?

好的,我找到了答案, 你应该做的 是连接 Django 和 MongoDB 使用 Djongo

您可以阅读 here

我建议遵循我的设置。

  1. 转到 monogodb 站点 -> clickHere 并创建免费帐户。
  2. 创建新集群
  3. 然后你会返回到这个页面,如果没有在左侧按DataBase在DEPLOYMENT下,然后你会得到。
  4. 按下连接按钮
  5. 选择“连接您的应用程序”,然后选择 python 和最新版本

完成所有这些后,您将拥有 link: 例如!!!

mongodb+srv://<username>:<password>@<atlas cluster>/<myFirstDatabase>?retryWrites=true&w=majority

复制此 link 并执行下一个设置:

  • 返回您的终端并安装此软件包:pip install djongo
  • 并打开 settings.py
  • 将您的 DATEBASE 更改为如下所示:
DATABASES = {
        'default': {
            'ENGINE': 'djongo',
            'NAME': 'your-db-name',
            'CLIENT': {
                'host': 'mongodb+srv://<username>:<password>@<atlascluster>/<myFirstDatabase>?retryWrites=true&w=majority'
            }  
        }
}
  • 在 'host' 中粘贴您从 monogodb 站点复制的 link。
  • 在'NAME'写你的数据库名。

现在我们有了 Django 项目(和应用程序),您可以使用以下命令在 MongoDB 中创建集合:

python manage.py makemigrations <app-name>

python manage.py migrate

如果您收到类似“django.db.utils.databaseerror”的错误 你应该做的是: 它会删除您创建的应用程序中的迁移文件夹中的所有文件,然后 运行 再次执行上述命令。