python开发订单查询功能(flask+orm bee)

1. 搭建python环境。

可以参考其它文档。

此处python使用 3.12

IDE随意,PyCharm 或 Eclipse +PyDev也可以。

2. Flask

复制代码
2.1 安装Flask
pip install Flask

2.2 一个最简单的flask实例

创建一个工程,

新建一个 main.py文件,

输入以下内容:

python 复制代码
from flask import request
from flask.app import Flask

app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello Orm Bee"


if __name__ == '__main__':
    # app.run()
    app.run(debug=True)

到该文件目录下,运行 :

python main.py

就会看到以下信息:

在浏览器中,

输入地址:http://localhost:5000/

或者:127.0.0.1:5000

就能看下以下信息,证明整合flask成功。

3. 整合数据库,查询数据库的订单

这里,我们假如有orders 表,它有id, name,remark三个字段。

对应的实体如下:

Orders.py

python 复制代码
class Orders:
    id = None  
    name = None 
    remark = None

    #can ignore
    def __repr__(self):  
        return  str(self.__dict__)

数据库连接的配置信息,放在:bee.json

内容如下:

XML 复制代码
{
	"dbName": "SQLite",
	"database": "E:\\xxx\\project-name\\bee.db",
	"dbModuleName": "sqlite3"
}

添加Orm Bee用来查询数据库:

先安装:

pip install ormbee

更新main.py的内容,

python 复制代码
from bee.api import SuidRich
from bee.config import PreConfig
from flask import request
from flask.app import Flask

from Orders import Orders

app = Flask(__name__)

#设置工程根目录,也是放配置的地方
PreConfig.config_path="E:\\xxx\\project-namet"
# PreConfig.config_folder_root_path="E:\\xxx\\project-name"  #1.6.0之前使用

@app.route("/")
def hello():
    return "Hello Orm Bee"


@app.route("/orders/<name>",methods=['GET','POST'])
def orders(name):
    
    orders=Orders()
    
    if request.method == 'GET':
        orders.name = name
    
        suidRich = SuidRich()
        one = suidRich.select_first(orders) #查询名称为name的订单
        if one:
            return "orders message: " + name + " : " + str(one.id)
        else:
            return "orders message: <empty>" 
    else:
        return "this is not get method, name:" + name 


if __name__ == '__main__':
    # app.run()
    app.run(debug=True)

关键代码就三行:

python 复制代码
        orders.name = name
        suidRich = SuidRich()
        one = suidRich.select_first(orders) #查询名称为name的订单

SuidRich是 select,update,insert,delete四种操作的类,

select_first是只查首行记录。将orders对象传给Orm Bee,它就会为我们解析,查询数据库并返回数据。

访问以下网址,即可看到查询的信息。(当然,之前要先插入些数据)

http://localhost:5000/orders/bee

有了这些数据,我以可以用更好看的前端页面进行解析渲染。

完整工程及文件,如下:

将bee.json配置文件,放入resources文件夹也是可以的。

Orm Bee一个是简单又高效的ORM工具.

源码地址:

https://github.com/automvc/BeePy

相关推荐
CodeCraft Studio几秒前
国产化PDF处理控件Spire.PDF教程:如何在 Java 中通过模板生成 PDF
java·python·pdf·spire.pdf·java创建pdf·从html创建pdf
摆烂z1 小时前
Jupyter Notebook的交互式开发环境方便py开发
ide·python·jupyter
一乐小哥2 小时前
一口气同步10年豆瓣记录———豆瓣书影音同步 Notion分享 🚀
后端·python
华研前沿标杆游学2 小时前
华为在国内搞的研发基地有多野?标杆游学带你解锁“研发界顶流”
python
小胖墩有点瘦2 小时前
【基于深度学习的中草药识别系统】
人工智能·python·深度学习·课程设计·计算机毕业设计·中草药识别
正在走向自律3 小时前
Ubuntu系统下Python连接国产KingbaseES数据库实现增删改查
开发语言·数据库·python·ubuntu·kingbasees·ksycopg2
Calihen的学习日志3 小时前
【Pandas】3.1-数据预处理:列的基本操作
python·pandas
打螺丝否3 小时前
稠密矩阵和稀疏矩阵的对比
python·机器学习·矩阵
这里有鱼汤3 小时前
你以为 FastAPI 足够强?其实 Litestar 能让你的项目更轻量高效
后端·python
大学生毕业题目4 小时前
毕业项目推荐:83-基于yolov8/yolov5/yolo11的农作物杂草检测识别系统(Python+卷积神经网络)
人工智能·python·yolo·目标检测·cnn·pyqt·杂草识别