数据库
使用SQLModel实现数据持久化,真香
创建表¶
from ayaka import AyakaCat
cat = AyakaCat("test", db="test_hhhh")
class Money(cat.db.UserDBBase, table=True):
# __tablename__可以用于自定义表名,当然你可以不写,使用类名作为默认值
__tablename__ = "my_money"
# money
money: int = 1000
# ayaka会在asgi服务启动后自动创建所有SQLModel表
数据库位置data/test_hhhh/data.db
增 insert¶
@cat.on_text()
async def _():
money = Money(group_id=100, user_id=1)
cat.db_session.add(money)
# cat.db_session会在回调结束后自动commit
删 delete¶
async def _():
money = Money(group_id=100, user_id=1)
cat.db_session.delete(money)
# cat.db_session会在回调结束后自动commit
查 select, 改 update¶
from sqlmodel import select
async def _():
# 查
stmt = select(Money).filter_by(group_id=100, user_id=1)
cursor = cat.db_session.exec(stmt)
money = cursor.one()
# 改
money.money += 1000
# cat.db_session会在回调结束后自动commit
下一步¶
在这里~ ↘