Django集成MongoDB实现过程解析


Posted in Python onDecember 01, 2020

将Django与MongoDB集成

在不更改Django ORM的情况下,将MongoDB用作Django项目的后端数据库。使用Django Admin在MongoDB中添加和修改文档。通过仅添加一行代码,开始将Django与MongoDB结合使用。

1.pip安装djongo

2、设置setting文件

DATABASES = {
    'default': {
      'ENGINE': 'djongo',
      'NAME': 'your-db-name',
    }
  }

需要注意的地方:

1.Python 3.6或更高版本。

2.MongoDB 3.4或更高版本。

3.如果您的模型使用嵌套查询或子查询集,例如:

inner_qs = Blog.objects.filter(name__contains='Ch').values('name')
entries = Entry.objects.filter(blog__name__in=inner_qs)

需要MongoDB 3.6或更高版本。

有哪些好处:

1.重用Django模型/ ORM。

2.使用Djongo,可以永久地告别 Django Migrations。

怎么快速使用

在model中配置:

from djongo import models
class Blog(models.Model):
  name = models.CharField(max_length=100)
  class Meta:
    abstract = True
class Entry(models.Model):
  blog = models.EmbeddedField(
    model_container=Blog
  )  
  headline = models.CharField(max_length=255)

在view使用:

e = Entry()
e.blog = {
  'name': 'Djongo'
}
e.headline = 'The Django MongoDB connector'
e.save()

更多细节请查阅官方文档:https://nesdis.github.io/djongo/integrating-django-with-mongodb/

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 字典与字符串的互转实例
Jan 13 Python
Python 关于反射和类的特殊成员方法
Sep 14 Python
python数据结构之列表和元组的详解
Sep 23 Python
Python2和Python3中print的用法示例总结
Oct 25 Python
Linux下多个Python版本安装教程
Aug 15 Python
Django渲染Markdown文章目录的方法示例
Jan 02 Python
解决新版Pycharm中Matplotlib图像不在弹出独立的显示窗口问题
Jan 15 Python
Python二叉树的镜像转换实现方法示例
Mar 06 Python
PyQT实现菜单中的复制,全选和清空的功能的方法
Jun 17 Python
Django 开发环境与生产环境的区分详解
Jul 26 Python
Python3 pywin32模块安装的详细步骤
May 26 Python
浅谈cv2.imread()和keras.preprocessing中的image.load_img()区别
Jun 12 Python
基于Django快速集成Echarts代码示例
Dec 01 #Python
Python更改pip镜像源的方法示例
Dec 01 #Python
Python读取图像并显示灰度图的实现
Dec 01 #Python
Python性能测试工具Locust安装及使用
Dec 01 #Python
python爬虫中抓取指数的实例讲解
Dec 01 #Python
OpenCV灰度化之后图片为绿色的解决
Dec 01 #Python
python批量合成bilibili的m4s缓存文件为MP4格式 ver2.5
Dec 01 #Python
You might like
实用函数3
2007/11/08 PHP
PHP的APC模块实现上传进度条
2015/10/27 PHP
PHP微信开发之微信消息自动回复下所遇到的坑
2016/05/09 PHP
JavaScript 对象的属性和方法4种不同的类型
2010/03/19 Javascript
jquery easyui combobox模糊过滤(示例代码)
2013/11/30 Javascript
采用自执行的匿名函数解决for循环使用闭包的问题
2014/09/11 Javascript
js实现table添加行tr、删除行tr、清空行tr的简单实例
2016/10/15 Javascript
详解vue.js+UEditor集成 [前后端分离项目]
2017/07/07 Javascript
jQuery实现简单日期格式化功能示例
2017/09/19 jQuery
详解vue项目首页加载速度优化
2017/10/18 Javascript
JS+HTML实现的圆形可点击区域示例【3种方法】
2018/08/01 Javascript
vue 中滚动条始终定位在底部的方法
2018/09/03 Javascript
js限制输入框只能输入数字(onkeyup触发)
2018/09/28 Javascript
详解vue使用插槽分发内容slot的用法
2019/03/28 Javascript
vue组件传值的实现方式小结【三种方式】
2020/02/05 Javascript
vue-resource 拦截器interceptors使用详解
2021/01/18 Vue.js
vue-cli 3如何使用vue-bootstrap-datetimepicker日期插件
2021/02/20 Vue.js
[04:29]【TI9采访】OG.N0tail在胜者组决赛后接受采访
2019/08/25 DOTA
[01:19:33]DOTA2-DPC中国联赛 正赛 iG vs VG BO3 第一场 2月2日
2021/03/11 DOTA
Python极简代码实现杨辉三角示例代码
2016/11/15 Python
python版本单链表实现代码
2018/09/28 Python
python cumsum函数的具体使用
2019/07/29 Python
详解python中__name__的意义以及作用
2019/08/07 Python
英国百年闻名的优质健康产品连锁店:Holland & Barrett
2019/12/19 全球购物
建筑工程技术应届生求职信
2013/11/17 职场文书
财务会计专业推荐信
2013/11/30 职场文书
青年创业培训欢迎词
2014/01/10 职场文书
数学系毕业生的自我评价
2014/01/10 职场文书
商务考察邀请函范文
2014/01/21 职场文书
个人委托书范本
2014/04/02 职场文书
责任书范本
2014/08/25 职场文书
环保项目建议书
2014/08/26 职场文书
领导四风问题整改措施思想汇报
2014/10/13 职场文书
2015年幼儿园中班下学期工作总结
2015/05/22 职场文书
想要创业,那么你做好准备了吗?
2019/07/01 职场文书
react 项目中引入图片的几种方式
2021/06/02 Javascript