将Django项目连接到MongoDB
Djongo是一个SQL到mongodb的查询转码器。使用djongo,我们可以使用MongoDB作为我们Django项目的后台数据库。我们甚至不需要改变Django ORM。最重要的是,我们只需添加一行代码就可以将Django与MongoDB设置在一起。不需要改变序列化器、视图或任何其他模块。
官方文件 – https://pypi.org/project/djongo/
Working –
Djongo将一个SQL查询字符串翻译成MongoDB查询文档。因此,不需要改变模型、序列化器、视图或任何Django功能。Djongo支持所有的Django contrib库,使其成为一个易于使用的连接器。
需求–
1.Python 3.6或更高版本。
2.MongoDB 3.4或更高版本。(如果你使用嵌套查询,则需要MongoDB 3.6或更高版本)。
功能:
- 重用Django模型/ORM –
由于Django模型与Djongo兼容,我们可以重复使用它们。 - Integrity checks
Djongo允许在保存到数据库之前进行完整性检查,如缺失值。
例如,如果我们在EmbeddedField中设置null=False、blank=False,则永远不会存储缺失值。
- Validators
我们可以在每个字段被保存到数据库之前应用验证检查,如URLValidator、EmailValidator、RegexValidator等。
步骤:
第1步:设置虚拟环境
virtualenv myenv
myenv\Scripts\activate
第2步:安装Django
pip install django
第3步:安装Djongo
pip install djongo
第4步:启动Django项目
django-admin startproject geeks_project
你的项目结构将看起来像这样。
第5步:对settings.py文件进行修改。
现在,打开settings.py文件。注释或删除之前的SQL数据库配置,在settings.py文件中添加以下代码:settings.py
DATABASES = {
'default': {
'ENGINE': 'djongo',
'NAME': 'your-database-name',
}
}
就这样了。现在你可以使用Mongodb作为你的django项目的后台数据库,而不需要改变任何一个django模型!