calendar_test/src/products/models.py

47 lines
733 B
Python

from sqlmodel import Field, SQLModel
class ProductsBase(SQLModel):
name: str
price: float
image: str
class Products(ProductsBase, table=True):
id: int | None = Field(default=None, primary_key=True)
class ProductsCreate(ProductsBase):
pass
class ProductsRead(ProductsBase):
id: int
class ProductsUpdate(SQLModel):
name: str | None = None
price: float | None = None
image: str | None = None
class CartItemBase(SQLModel):
product_id: int
class CartItemAdd(CartItemBase):
pass
class CartItem(CartItemBase):
count: int = 0
class CartItemRead(CartItem):
pass
class CartItemWithProduct(CartItemRead):
product: ProductsRead | None = None
total_price: float = 0