mirror of
https://github.com/wowlikon/LibraryAPI.git
synced 2025-12-11 21:30:46 +00:00
init
This commit is contained in:
18
app/models.py
Normal file
18
app/models.py
Normal file
@@ -0,0 +1,18 @@
|
||||
from typing import Optional, List
|
||||
from sqlmodel import SQLModel, Field, Relationship
|
||||
|
||||
class AuthorBookLink(SQLModel, table=True):
|
||||
author_id: int | None = Field(default=None, foreign_key="author.id", primary_key=True)
|
||||
book_id: int | None = Field(default=None, foreign_key="book.id", primary_key=True)
|
||||
|
||||
class Author(SQLModel, table=True):
|
||||
id: Optional[int] = Field(primary_key=True, index=True)
|
||||
name: str
|
||||
|
||||
books: List["Book"] = Relationship(back_populates="authors", link_model=AuthorBookLink)
|
||||
|
||||
class Book(SQLModel, table=True):
|
||||
id: Optional[int] = Field(primary_key=True, index=True)
|
||||
title: str
|
||||
description: str
|
||||
authors: List[Author] = Relationship(back_populates="books", link_model=AuthorBookLink)
|
||||
Reference in New Issue
Block a user