""" 记账记录模型 """ from datetime import date from typing import Optional from decimal import Decimal from sqlmodel import SQLModel, Field, Relationship, Column from sqlalchemy import Numeric from .user import User class Transaction(SQLModel, table=True): """记账记录表""" __tablename__ = "transactions" id: Optional[int] = Field(default=None, primary_key=True) amount: Decimal = Field(sa_column=Column(Numeric(10, 2))) # 正数为收入,负数为支出 category: str = Field(max_length=50) description: Optional[str] = Field(default=None, max_length=200) date: date user_id: int = Field(foreign_key="users.id", index=True) # 关系 user: Optional[User] = Relationship()