djongo:Django和MongoDB链接器

在Django项目中使用MongoDB做为后端数据库,且不改变Django的ORM框架。实现Django用户管理程序对MongoDB数据库中文件的增长和修改。数据库

用法

1.pip install djongodjango

2.在Django项目下的setting.py中增长以下代码:后端

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

3.运行 manage.py makemigrations,以后运行 manage.py migrate(仅在MongoDB中第一次创建数据表的时候须要)session

4.完成。   在这里仍是要推荐下我本身建的Python开发学习群:725479218,群里都是学Python开发的,若是你正在学习Python ,小编欢迎你加入,你们都是软件开发党,不按期分享干货(只有Python软件开发相关的),包括我本身整理的一份2018最新的Python进阶资料和高级开发教程,欢迎进阶中和进想深刻Python的小伙伴app

要求:

1.Python3.6及以上版本框架

2.MongoDB 3.4及以上版本函数

3.若是项目数据库中使用嵌套查询或者子查询,好比:post

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

须要MongoDB3.6及以上版本。学习

如何工做?

Djongo对Django ORM框架的改变很是小,这就意味着不会发生一些没必要要的错误。它将SQL字符串查询转变为MongoDB的文件查询。至此,全部和Django相关的功能、数据库等都这样运做。3d

Django的服务模块:

'django.contrib.admin',
'django.contrib.auth',
'django.contrib.sessions',

其它的也全都支持。

Django中用法

用于MongoDB的Djongo链接器确保你能够: --从新使用Django数据库/ORM框架 --同原始Django变量一块儿发挥做用 --事先验证你的代码 --微小的SQL JOIN操做

参考集成Django和MongoDB获取更详细的介绍。若是你的项目使用了复杂的数据库,也能够向专家获取支持。

使用Django用户管理模块添加数据文件

好比你想利用Django建立一个以MongoDB为后端数据库的博客平台。在你博客项目app/models.py文件下定义Blog数据表:

完成设置,而后访问localhost:80000/admin/你将会看到如下结果。

查询嵌入的数据字段

在上面的例子中,咱们要查询全部以Beatles开头的名字,可使用下面的查询方法:

参考在Django中使用MongoDB数据字段获取更多的介绍。

Djongo管理器

Djongo管理器扩展了Django管理器的功能。它可以让你使用全部pymongo的API命令。能够在模型中定义相似Djongo管理器同样的自定义管理器。

管理器的使用和Djongo管理器同样: post = Entry.objects.get(pk=pkey) 将会得到一个带有主键pkey的对象。

对Pymongo直接操做

MongoDB有很是强大的查询命令,DjongoManager可以让你彻底使用它。

你能够直接使用任何pymongo命令经过在命令名字前面加上mongo的前缀。例如,对Blogpage(Blogpage在SQL中保存为一个数据表,在MongoDB中保存为一个集合)使用aggregate,函数名变为mongoaggregate。在模型中直接插入一个文件(不是使用.save()),使用mongoinsertone() 。

相关文章
相关标签/搜索