广告
返回顶部
首页 > 资讯 > 数据库 > flask_16:通过 MongoEngine 使用 MongoDB
  • 625
分享到

flask_16:通过 MongoEngine 使用 MongoDB

摘要

使用一个 mongoDB 之类的文档型数据库来代替关系 sql 数据是很常见的。本方案演示 如何使用文档映射库 MonGoEngine 来集成 MongoDB 。 先准备好一个运行中的 MongoDB 服务和 flask-MongoE


	flask_16:通过 MongoEngine 使用 MongoDB
[数据库教程]

使用一个 mongoDB 之类的文档型数据库来代替关系 sql 数据是很常见的。本方案演示 如何使用文档映射库 MonGoEngine 来集成 MongoDB 。

先准备好一个运行中的 MongoDB 服务和 flask-MongoEngine

pip install flask-mongoengine

配置

基本的配置是在 app.config 中定义 MONGODB_SETTINGS 并创建一个 MongoEngine 实例:

from flask import Flask
from flask_mongoengine import MongoEngine

app = Flask(__name__)
app.config[‘MONGODB_SETTINGS‘] = {
    "db": "myapp",
}
db = MongoEngine(app)

映射文档

声明用于一个 Mongo 文档的模型的方法是创建一个 Document 的子类,然后 声明每个字段:

import mongoengine as me

class Movie(me.Document):
    title = me.StringField(required=True)
    year = me.IntField()
    rated = me.StringField()
    director = me.StringField()
    actors = me.ListField()

如果文档包含嵌套的字段,那么使用 EmbeddedDocument 来定义嵌套的文档,并 在父文档中使用 EmbeddedDocumentField 声明相应的字段:

class Imdb(me.EmbeddedDocument):
    imdb_id = me.StringField()
    rating = me.DecimalField()
    votes = me.IntField()

class Movie(me.Document):
    ...
    imdb = me.EmbeddedDocumentField(Imdb)

创建数据

使用字段的关键字参数实例化文档类。还可以在实例化后为字段属性指定值。 然后调用 doc.save()

bttf = Movie(title="Back To The Future", year=1985)
bttf.actors = [
    "Michael J. Fox",
    "Christopher Lloyd"
]
bttf.imdb = Imdb(imdb_id="tt0088763", rating=8.5)
bttf.save()

查询

使用类的 objects 属性来执行查询。关键字参数用于字段的等值查询:

bttf = Movies.objects(title="Back To The Future").get_or_404()

字段名称后加双下划线可以连接查询操作符。 objects 及其返回的查询是可迭代的:

some_theron_movie = Movie.objects(actors__in=["Charlize Theron"]).first()

for recents in Movie.objects(year__gte=2017):
    print(recents.title)

相关文档

有许多关于使用 MongoEngine 定义和查询文档数据的方法,更多信息请参阅其 官方文档 。

Flask-MongoEngine 为 MongoEngine 添加了有用的工具,请参阅其 文档说明 。

 

 本文转载自:通过 MongoEngine 使用 MongoDB

flask_16:通过 MongoEngine 使用 MongoDB

原文地址:https://www.cnblogs.com/hailin2018/p/13618926.html

您可能感兴趣的文档:

--结束END--

本文标题: flask_16:通过 MongoEngine 使用 MongoDB

本文链接: https://www.lsjlt.com/news/7906.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • flask_16:通过 MongoEngine 使用 MongoDB
    使用一个 MongoDB 之类的文档型数据库来代替关系 SQL 数据是很常见的。本方案演示 如何使用文档映射库 MongoEngine 来集成 MongoDB 。 先准备好一个运行中的 MongoDB 服务和 Flask-MongoE...
    99+
    2019-12-09
    flask_16:通过 MongoEngine 使用 MongoDB 数据库入门 数据库基础教程 数据库 mysql
  • 使用Logstash收集MongoDB日志并通过Zabbix报警
    一 应用场景描述 在有些情况下,仅仅通过Zabbix去监控MongoDB的端口和各种状态还不够,MongoDB的日志监控也是很重要的。例如Mongos连接后端的Shard报SocketExcept...
    99+
    2022-10-18
  • 通过Python使用MySQL
    本篇内容主要讲解“通过Python使用MySQL”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“通过Python使用MySQL”吧!前提:这里默认大家已经安装好mysql。01Mysql简介mys...
    99+
    2023-06-15
  • 通过vs2017使用python
     最开始接触的就是vs,但是当时搞不懂怎么用vs使用python,最近百度到了知乎的这篇文章,发现2017简化了不少设置,具体内容我就不搬过来了,有兴趣的可以查看原网页。 知乎的原始地址:https://www.zhihu.com/que...
    99+
    2023-01-31
    python
  • python使用urllib2通过htt
    # -*- coding: utf-8 -*- import urllib2 # http发送报文 def httpsend(url, bw): req = urllib2.Request(url, bw) res_d...
    99+
    2023-01-31
    python htt
  • django如何通过virtualenv使用
    这篇文章给大家分享的是有关django如何通过virtualenv使用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在我们使用 virtualenv时,可以对多个python环境同时操作,这就省去了很多不必要的创...
    99+
    2023-06-14
  • 使用python通过http发送json
    因为需要通过http协议向服务器post一些数据,于是用python写了一个相关小程序,没想到遇到了一些问题,于是就在这里将这个问题记录一下。 先上源码: import urllib.request import json dat...
    99+
    2023-01-31
    python http json
  • 使用Python通过xlrd处理exce
    项目需求:    通过指定excel文件,文件格式如下:                要求下载第四列URL中的图片,图片保存名称为,url中的名称,每个公司需要单独建立一个独立的文件夹,公司下面会有不同类型的图片,不同类型的图片也需要不同...
    99+
    2023-01-31
    Python xlrd exce
  • 使用DHCP通过TCP/IP禁用NetBIOS
    要通过DHCP禁用NetBIOS,您需要在DHCP服务器上进行一些配置更改。以下是在Windows Server上进行此配置更改的步...
    99+
    2023-09-08
    DHCP
  • 使用Quantlib,通过YTM计算债券
    债券标的为170005,我的python代码如下: 1 import QuantLib as ql 2 3 faceAmount = 100.0 4 redemption = 100.0 5 issueDate = ql.D...
    99+
    2023-01-30
    债券 Quantlib YTM
  • MyBatis-Plus如何通过注解使用TypeHandler
    目录通过注解使用TypeHandler官方示例Kotlin案例自定义TypeHandler使用通过注解使用TypeHandler 在使用MyBatis时,我们与数据表中字段映射的ja...
    99+
    2022-11-12
  • 使用Winsock通过TCP发送数据段
    首先,需要包含 `winsock2.h` 头文件,并链接 `ws2_32.lib` 库文件。然后,可以按照以下步骤使用Winsock...
    99+
    2023-09-08
    C
  • 使用springboot通过spi机制加载mysql驱动的过程
    SPI是一种JDK提供的加载插件的灵活机制,分离了接口与实现,就拿常用的数据库驱动来说,我们只需要在spring系统中引入对应的数据库依赖包(比如mysql-connector-ja...
    99+
    2022-11-12
  • 通过使用Byte Buddy便捷创建Java Agent
    目录Java 字节码与类文件格式克服字节码的不足Byte Buddy 简介通过委托实现 Instrumentation实现方法级别的安全性实现安全功能的 Java agent关于作者...
    99+
    2022-11-13
  • Android使用GRPC进行通信过程解析
    目录引言环境搭建修改项目的setting.gradle信息修改项目的build.gralde信息修改gradle版本号修改模块的build.gradle信息在main目录下创建pro...
    99+
    2023-02-28
    Android使用GRPC Android GRPC通信
  • 如何通过微软的WSL2使用Fedora 33
    小编给大家分享一下如何通过微软的WSL2使用Fedora 33,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!先决条件为了达成这一目标,你需要一些基本条件。你应该运...
    99+
    2023-06-15
  • 怎么通过Gitee使用别人的仓库
    这篇文章主要讲解了“怎么通过Gitee使用别人的仓库”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么通过Gitee使用别人的仓库”吧!克隆别人的仓库首先,你需要在Gitee上找到你想要克隆...
    99+
    2023-07-05
  • 怎么通过php使用gpg加密文件
    本篇内容介绍了“怎么通过php使用gpg加密文件”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!加密一个简单但又实用的任务就是发送加密电子邮件...
    99+
    2023-06-20
  • dotConnect for Oracle入门指南(八):通过OracleCommand类使用存储过
    【下载dotConnect for Oracle最新版本】dotConnect for Oracle(原名OraDirect.NET)建立在ADO.NET技术上,为基于Oracle数据库的应用程序提供完整的...
    99+
    2022-10-18
  • 使用redis实现延迟通知功能(Redis过期键通知)
    Redis 过期监听场景 业务中有类似等待一定时间之后执行某种行为的需求 , 比如 30 分钟之后关闭订单 . 网上有很多使用 Redis 过期监听的 Demo redis配置 &n...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作