Files
reflex-ipad/reflex_ipad/models/medicine.py
2024-01-04 09:02:44 +01:00

30 lines
1.0 KiB
Python

import reflex as rx
from typing import Optional, List
from sqlmodel import Field, Session, SQLModel, create_engine, select, Relationship
class Owner(rx.Model, table=True):
id: Optional[int] = Field(default=None, primary_key=True)
name: str
medicines: List["Medicine"] = Relationship(back_populates="owner")
class Medicine(rx.Model, table=True):
id: Optional[int] = Field(default=None, primary_key=True)
name: str
owner_id: int = Field(default=None, foreign_key="owner.id")
owner: Owner = Relationship(back_populates="medicines")
pzn: str
package_size: Optional[int] = Field(default=None)
uuid: str = Field(index=True)
log: List["MedicineLog"] = Relationship(back_populates="medicine")
cron: Optional[str] = Field(default=None)
class MedicineLog(rx.Model, table=True):
id: Optional[int] = Field(default=None, primary_key=True)
medicine_id: Optional[int] = Field(default=None, foreign_key="medicine.id")
medicine: Optional[Medicine] = Relationship(back_populates="log")
timestamp: int