一. 在python脚本中, 我们通常可以使用pymongo模块实现与mongodb数据库的交互, 但是在使用Django框架进行定制开发的web server 项目中, 仍然使用pymongo模块的话, 显然是过于“原始”,这时可以考虑使用 mongoengine 模块, 通过这个模块, 可以封装数据模型, 然后以orm的形式进行crud,实现对mongodb数据库的操作。 这里仅对如何快速的使用这个模块做一个简单说明。

二. 安装 mongoengine

pip install mongoengine

三. django 配置文件中配置连接mongodb数据库

importmongoengine#创建与mongodb数据库的连接

MONGO_CONN =mongoengine.connect(

db="lowman", #需要进行操作的数据库名称

alias='default', #必须定义一个default数据库

host="192.168.3.69",

port=27017,

username="渣男不但丑",

password="28269",

authentication_source="admin", #进行身份认证的数据库,通常这个数据库为admin“

)

四. models.py 中定义数据模型

importmongoengineimportdatetimefrom mongoengine importDocumentclass Book(Document): #默认的会在 mongodb 中的 lowman 数据库创建一个名称为book的collection

"""这里定义的模型, 实际上与使用关系型数据库时定义的模型,其定义的方式是一样的

只不过使用不同的模块,并继承自不同的父类, 数据保存在不同类型的数据库里。不需要执行迁移操作"""author= mongoengine.StringField(required=True, max_length=125)

email= mongoengine.StringField(required=True)

addr= mongoengine.StringField(required=True, max_length=125)

time= mongoengine.DateTimeField(default=datetime.datetime.now)

五. views.py 视图中进行crud操作

from .models importBook

book_obj= Book.objects.create(author="渣男不但丑, 屌丝也很忙", email="lowman@9527.com", addr="流浪地球村")

制作好模型以后, 就可以通过这个模型调用orm进行数据的增删改查,使用方式大体上与django自带的orm是相似的,这里就不对这种搬砖头的事情加以细述了,如果希望了解更加详细的使用方式及注意事项,可以查看官方文档: http://docs.mongoengine.org/

python mongodb orm_Django 通过 mongoengine 连接 MongoDB 进而使用orm进行CRUD相关推荐

  1. java 连接mongodb 集群_Java 连接MongoDB集群的几种方式

    先决条件 先运行mongodb肯定是必须的,然后导入以下包: import com.mongodb.MongoClient; import com.mongodb.MongoClientURI; im ...

  2. mongodb android,Android编程连接MongoDB及增删改查等基本操作示例

    本文实例讲述了Android编程连接MongoDB及增删改查等基本操作.分享给大家供大家参考,具体如下: MongoDB简介 Mongodb,分布式文档存储数据库,由C++语言编写,旨在为WEB应用提 ...

  3. [mongoDB]使用Studio 3T连接MongoDB报错Illegal argument: For input string: “23-28-g865b4f6a96“

    使用Studio 3T做MongoDB客户端连接报错,但是使用robo3t正常连接 如图,MongoDB正常启动: 但Studio 3T连接报错: 通过报错我们可以明白,这是由于MongoDB的版本中 ...

  4. TP多库连接MongoDb

    @[TOC]TP多库连接MongoDb) TP多库连接MongoDb 1.下载MongoDb 类库 方法1:通过composer tp5.0 的话 使用composer 1.* , tp5.1 的话使 ...

  5. 四、Springboot连接mongodb

    Springboot连接mongodb博客 Springboot连接mongodb,mongodb是一个非关系型数据库,文档型数据库,存储的内容是JSON格式的文档,文档中可以包含各种类型的数据. S ...

  6. MongoDB 安装配置以及连接

    文章目录 windows安装MongoDB 一.下载win版本的安装包 二.安装MongoDB 三.配置MongoDB 四.测试环境是否已配好 五.进入客户端页面 六.Hello MongoDB 七. ...

  7. M001: MongoDB Basics chapter 2 The MongoDB Query Language + Atlas学习记录

    M001: MongoDB Basics chapter 2 The MongoDB Query Language + Atlas学习记录 运行环境 操作系统:windows 10 家庭中文版 Mon ...

  8. python怎么连接MongoDB数据库

    Python 要连接 MongoDB 需要 MongoDB 驱动,这里我们使用 PyMongo 驱动来连接. pip 安装: pip3 install pymongo 引入库: import pymo ...

  9. Python 连接MongoDB并比较两个字符串相似度的简单示例

    本文介绍一个示例:使用 pymongo 连接 MongoDB,查询MongoDB中的 字符串 记录,并比较字符串之间的相似度. 一,Python连接MongoDB 大致步骤:创建MongoClient ...

最新文章

  1. Jsp 无法解析${}
  2. shell高级(一)
  3. ABP理论学习之开篇介绍
  4. Github标星24300!吴恩达机器学习课程笔记.pdf
  5. java换脸_随意换脸 · ink-image/api Wiki · GitHub
  6. stm32 DMA使用详解
  7. LeetCode 91. 解码方法
  8. 深度拷贝时,类中的非简单类型字段
  9. AI前导课-第一课AI概览(2018/10/20)
  10. SQL Server 2012新增的内置函数尝试
  11. php修改密码功能md5,php – 更改密码哈希类型的最有效方法(md5到sha1)
  12. 我们团队一位Android开发者的故事
  13. 60度斜坡怎么计算_坡度计算公式图解
  14. 网吧带宽很大,为什么三层更新下载游戏很慢?
  15. docker exec详解
  16. 【047】Testyourvocab-五分钟测试你的英语词汇量
  17. 世界各地 史上最全最详细无线通信频率分配表(内容含概wifi、2.4G、5G,绝对值得收藏)
  18. 关机、睡眠和休眠有啥区别
  19. Luogu P2129 小Z的情书
  20. javax异常: javax.imageio.IIOException: Can't create output stream解决方法

热门文章

  1. Vue父组件调用子组件的方法并传参的两种方式(用$refs.refName.functionName、window.function)
  2. 设置IDEA自动导入import 关联的包
  3. ubuntu18.04 -- 创建第一个Django项目
  4. 图的算法专题——最小生成树
  5. 在vue中使用babel-polyfill
  6. (转)记忆杭州中的(非杭户籍人)
  7. solr单机版的搭建
  8. java在继承中父类的成员变量是否会被子类所覆盖
  9. [BuildRelease]build number / id
  10. 简评游戏人工智能相关的中文书(下)