[WIP] trying to implement the foreignKey

This commit is contained in:
2025-01-21 18:14:31 +01:00
parent 829d16c1c4
commit 6af8c36919
8 changed files with 37 additions and 33 deletions

View File

@@ -1,10 +1,10 @@
from uuid import UUID, uuid4
from enum import Enum
from sqlmodel import Field, SQLModel, select
from sqlmodel import Field, SQLModel, select, Relationship
from pydantic import Field as PydField
from category.models import CategoryRead
from category.models import CategoryRead, Category
class AccountType(Enum):
@@ -38,6 +38,7 @@ class AccountBaseId(AccountBase):
id: UUID | None = Field(default_factory=uuid4, primary_key=True)
class Account(AccountBaseId, table=True):
default_category: Category | None = Relationship()
@classmethod
def create(cls, account, session):
@@ -50,7 +51,7 @@ class Account(AccountBaseId, table=True):
@classmethod
def list(cls):
return select(Account)
return select(Account).join(Category)
@classmethod
def get(cls, session, account_id):
@@ -70,8 +71,7 @@ class Account(AccountBaseId, table=True):
session.commit()
class AccountRead(AccountBaseId):
# default_category: CategoryRead
pass
default_category: CategoryRead
class AccountWrite(AccountBase):
default_category_id: UUID = PydField(default=None, json_schema_extra={

View File

@@ -12,8 +12,8 @@ router = APIRouter()
@router.post("")
def create_account(account: AccountCreate, session: SessionDep, current_user=Depends(get_current_user)) -> AccountRead:
Account.create(account, session)
return account
result = Account.create(account, session)
return result
@router.get("")
def read_accounts(session: SessionDep, current_user=Depends(get_current_user)) -> Page[AccountRead]: