基于Flask&&Flask-MongoEngine,MVC模式的应用开发

Pre: install flask-mongoengine with pip:pip install flask-mongoengineBasic setup is easy, just fetch the extension:from flask import Flaskfrom flask_mongoengine import MongoEngineapp = Fla...
摘要由CSDN通过智能技术生成

Pre: install flask-mongoengine with pip:

pip install flask-mongoengine

Basic setup is easy, just fetch the extension:

from flask import Flask
from flask_mongoengine import MongoEngine

app = Flask(__name__)
app.config.from_pyfile('the-config.cfg')
db = MongoEngine(app)

Or, if you are setting up your database before your app is initialized, as is the case with application factories(如果在应用初始化之前建立数据库的话我们需要使用应用工厂)

from flask import Flask
from flask_mongoengine import MongoEngine
db = MongoEngine()
...
app = Flask(__name__)
app.config.from_pyfile('the-config.cfg')
db.init_app(app)

By default, Flask-MongoEngine assumes that the mongod instance is running on localhost on port 27017, and you wish to connect to the database named test.

Flask-MongoEngine 默认mongod实例运行在 localhost  的27017端口,如果你想要连接位于其他主机的数据库就需要按照官方网站提供的参考去做。

常用查询集Custom Queryset
flask-mongoengine attaches the following methods to Mongoengine’s default QuerySet:

get_or_404: works like .get(), but calls abort(404) if the object DoesNotExist.
first_or_404: same as above, except for .first().
paginate: paginates the QuerySet. Takes two arguments, page and per_page.
paginate_field: paginates a field from one document in the QuerySet. Arguments: field_name, doc_id, page, per_page.

flask-mongoengine automatically generates WTForms from MongoEngine models

本文内容是从基于Flask与MongoDB,使用MVC模式开发的项目中提取出来的一部分,只列出重点部分,下为简单的项目结构
这里写图片描述

先看一下manage.py

#!/usr/bin/env python

import os, sys
sys.path.append(os.path.abspath(os.path.dirname(__file__)))

from flask_script import Manager, Server

from omsapp import create_app#引入app创建函数
app = create_app(os.getenv('config') or 'default')#创建app


manager = Manager(app)
#命令管理的实例化
# Turn on debugger by default and reloader
manager.add_command("runserver", Server(
    use_debugger = True,
    use_reloader = True,
    host = '0.0.0.0',
    port = 5000)
)

if __name__ == "__main__":
    manager.run()

然后开始追溯flask-mongoengine

/omsapp/__init__.py

注意:

flask Blueprint在这里的用法
import os

from flask import Flask

from flask_mongoengine import MongoE
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值