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

发布于:2025-03-15 ⋅ 阅读:(18) ⋅ 点赞:(0)

1. 搭建python环境。

可以参考其它文档。

此处python使用 3.12

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

2. Flask

2.1 安装Flask
pip install Flask

2.2 一个最简单的flask实例

创建一个工程,

新建一个 main.py文件,

输入以下内容:

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

class Orders:
    id = None  
    name = None 
    remark = None

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

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

内容如下:

{
	"dbName": "SQLite",
	"database": "E:\\xxx\\project-name\\bee.db",
	"dbModuleName": "sqlite3"
}

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

先安装:

pip install ormbee

更新main.py的内容,

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)

关键代码就三行:

        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