add grocery to product

This commit is contained in:
2025-05-26 21:05:15 +02:00
parent 25c09dfecc
commit 7e24d58a94
11 changed files with 661 additions and 84 deletions

View File

@@ -20,10 +20,30 @@ class Brand(BrandBase):
class Config:
from_attributes = True
# Grocery schemas
class GroceryBase(BaseModel):
name: str
category: str
class GroceryCreate(GroceryBase):
pass
class GroceryUpdate(BaseModel):
name: Optional[str] = None
category: Optional[str] = None
class Grocery(GroceryBase):
id: int
created_at: datetime
updated_at: Optional[datetime] = None
class Config:
from_attributes = True
# Base schemas
class ProductBase(BaseModel):
name: str
category: str
grocery_id: int
brand_id: Optional[int] = None
organic: bool = False
weight: Optional[float] = None
@@ -34,7 +54,7 @@ class ProductCreate(ProductBase):
class ProductUpdate(BaseModel):
name: Optional[str] = None
category: Optional[str] = None
grocery_id: Optional[int] = None
brand_id: Optional[int] = None
organic: Optional[bool] = None
weight: Optional[float] = None
@@ -44,6 +64,7 @@ class Product(ProductBase):
id: int
created_at: datetime
updated_at: Optional[datetime] = None
grocery: Grocery
brand: Optional[Brand] = None
class Config:
@@ -80,7 +101,7 @@ class ProductInEvent(BaseModel):
class ProductWithEventData(BaseModel):
id: int
name: str
category: str
grocery: Grocery
brand: Optional[Brand] = None
organic: bool
weight: Optional[float] = None