From 5c75a71609a880214361ed368f868c7de5b18d24 Mon Sep 17 00:00:00 2001 From: linuskmr Date: Sat, 25 Dec 2021 18:58:56 +0100 Subject: [PATCH] Re-designed record models --- backend/src/models/record.py | 35 ++++++++--------------------------- 1 file changed, 8 insertions(+), 27 deletions(-) diff --git a/backend/src/models/record.py b/backend/src/models/record.py index 600e2f4..6c55bc6 100644 --- a/backend/src/models/record.py +++ b/backend/src/models/record.py @@ -1,28 +1,21 @@ -from datetime import datetime, timedelta +from datetime import datetime from typing import Optional -import pydantic from sqlmodel import SQLModel, Field class RecordBase(SQLModel): """Superclass model that all record classes have in common.""" - project: str # = Field(description="Name of the project that should be tracked", example="Uni") - tags: list[str] # = Field(description="List of tags by name", example=["Listening Lectures", - # "Not concentrated"]) - - -class RecordStartCreate(RecordBase): - """Model used when a user starts a record.""" - pass + project: int = Field(foreign_key="project.id") + start: datetime = Field(default=datetime.now()) + end: Optional[datetime] = Field(default=None) + tags: list[str] class RecordCreate(RecordBase): - """Model used when a user creates a complete record.""" - - start: datetime - end: datetime + """Model used when a user creates a record.""" + pass class Record(RecordBase, table=True): @@ -34,16 +27,4 @@ class Record(RecordBase, table=True): class RecordRead(RecordBase): """Model used when a user queries a record.""" - id: int - start: datetime # = Field( - # description="Start date of record", - # example=datetime.now() - timedelta(hours=3) - # ) - end: Optional[datetime] # = Field( - # default=None, - # description="End date of record", - # example=datetime.now() - # ) - project: str # = Field(description="Name of the project that should be tracked", example="Uni") - tags: list[str] # = Field(description="List of tags by name", example=["Listening Lectures", - # "Not be concentrated"]) + pass