-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmodels.py
28 lines (24 loc) · 934 Bytes
/
models.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# from .database import Base
# from sqlalchemy import Column, Integer, String
from sqlmodel import SQLModel, Field
from typing import Optional
from datetime import datetime, timezone
from enum import Enum
class RegisterUser(SQLModel, table=True):
__tablename__ = "registeruser"
id: Optional[int] = Field(default=None, primary_key=True)
email: str = Field(index=True, unique=True)
username: Optional[str] = Field(index=True, unique=True)
password: str
class TaskStatus(str, Enum):
pending = "pending"
in_progress = "in-progress"
completed = "completed"
class Tasks(SQLModel, table=True):
id: Optional[int] = Field(default=None, primary_key=True)
title: str
description: str
dueDate: datetime
status: TaskStatus
createdAt: datetime = Field(default_factory=lambda: datetime.now(timezone.utc))
updatedAt: datetime = Field(default_factory=lambda: datetime.now(timezone.utc))