博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
django连接mongodb mongoengine
阅读量:4987 次
发布时间:2019-06-12

本文共 1358 字,大约阅读时间需要 4 分钟。

优点

MongoEngine ()

1. 提供了和 Django 原生 ORM 几乎一样的一切,功能已经相当强大;
2. 用起来比 Django 原生 ORM 更简洁更优雅;
3. MongoEngine 和 Django “契合度”很高,Session,User 模块几乎可以直接平移过来,但MongoEngine 本身不依赖 Django,可以用在其他框架上;
4. 本身很轻巧,文档很丰富,所以文档提供不了的细节,可以通过直接读代码来解决。

当然缺点也是很明显的,最不能习惯的就是 admin 没了。

参考https://www.zhihu.com/question/19818326

先安装mongoengine模块

pip3 install mongoengine

然后在setting里配置

在INSTALLED_APPS里注册'mongoengine',把原来的database设置为None

INSTALLED_APPS = [    'django.contrib.admin',    'django.contrib.auth',    'django.contrib.contenttypes',    'django.contrib.sessions',    'django.contrib.messages',    'django.contrib.staticfiles','mongoengine']

 

 

MONGODB_DATABASES = {    "default": {        "name": "test",        "host": '127.0.0.1', "tz_aware": True, # 设置时区 }, }#这个好像可加可不加,我没有加照样可以使用
DATABASES = {    'default': {        'ENGINE': None,      #'ENGINE':'django.db.backends.dummy',#也可以这样设置
}}from mongoengine import connect
connect('test', host='127.0.0.1')#test是数据库名称,如果是本机就不用加host参数了
 

 

models.py使用

在models.py里导入mongoengine,类名就是表名,继承基类mongoengine.Document

import mongoengineclass Visit(mongoengine.Document):    v_type = mongoengine.StringField(max_length=30)    v_times = mongoengine.IntField(default=1,null=True)    end_time=mongoengine.DateTimeField(null=True)

不用makemigrations和migrate,直接就能用

 

参考的https://www.jianshu.com/p/ab3561ebdafd

转载于:https://www.cnblogs.com/z-x-y/p/10285366.html

你可能感兴趣的文章
第八章 虚拟机字节码执行引擎(待续)
查看>>
HDU 5024
查看>>
MVVMLight消息通知实现机制详解(一)
查看>>
C#验证类 可验证:邮箱,电话,手机,数字,英文,日期,身份证,邮编,网址,IP (转)
查看>>
go——标准命令
查看>>
装饰器
查看>>
在react/redux中使用Immutable
查看>>
hive的数据导入
查看>>
STM32的中断系统
查看>>
Java复习之Annotation
查看>>
在Java 7里如何对文件进行操作
查看>>
Python爬虫一步步抓取房产信息
查看>>
Hbase shell基本操作
查看>>
聊聊我怎么系统学习Linux技能并快速提高的
查看>>
shell第四篇(上)
查看>>
Leetcode题解(26)
查看>>
C# ASP.NET MVC HtmlHelper用法大全
查看>>
Orcale and 逻辑运算符的特殊情况
查看>>
python学习笔记-学习大纲
查看>>
Java中File类中方法应用的两个例子
查看>>