我有一个简单的网站,使用 Flask 和 Peewee 作为 ORM 来注释办公室里每个人都喝到的饮料,然后,每周左右一次,检查谁喝了什么,喝了多少,什么时候喝。我有一个名为 orders 的简单表,如下所示:
订单 - ID、产品、用户、数量、价格、日期
我想做的是有一个简单的页面,有人可以在其中查阅从特定日期到当天(例如,从 14-02 到今天 21-02)发生的事情。如何在 peewee 中进行此类查询?
我有一个简单的网站,使用 Flask 和 Peewee 作为 ORM 来注释办公室里每个人都喝到的饮料,然后,每周左右一次,检查谁喝了什么,喝了多少,什么时候喝。我有一个名为 orders 的简单表,如下所示:
订单 - ID、产品、用户、数量、价格、日期
我想做的是有一个简单的页面,有人可以在其中查阅从特定日期到当天(例如,从 14-02 到今天 21-02)发生的事情。如何在 peewee 中进行此类查询?
作为一个直到十分钟前才听说过 Peewee 的人,对此持保留态度:
from datetime import date
from peewee import *
class DrinksModel(Model):
class Meta:
database = SqliteDatabase('drinks.db')
class Order(DrinksModel):
id = PrimaryKeyField()
product = CharField()
user = CharField()
amount = IntegerField()
price = DecimalField()
date = DateField()
def get_orders_since(year, month=1, day=1):
orders = Order.select().where(Order.date >= date(year, month, day))
for order in get_orders_since(2014, 2, 14):
print(
"{}: {} drank {} x {}"
.format(order.date, order.user, order.amount, order.product)
)
如果这给出了一个错误,让我知道它说什么,我们将从那里开始。
建议更改:
该user
字段可能应该成为用户表的外键
该product
字段应成为 Product 表的外键,该price
字段应进入 Product 表