From 42c7e1c3313ba70b6ab917734b3d544d178eff92 Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Sun, 4 Jun 2023 21:36:03 -0300 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=80=20feat(flow.py):=20add=20relations?= =?UTF-8?q?hip=20to=20FlowStyle=20model=20=F0=9F=9A=80=20feat(flowstyle.py?= =?UTF-8?q?):=20add=20FlowStyle=20model=20=F0=9F=9A=80=20feat(flowstyle.py?= =?UTF-8?q?):=20add=20FlowStyleCreate=20and=20FlowStyleRead=20models=20?= =?UTF-8?q?=F0=9F=90=9B=20fix(settings.py):=20correct=20typo=20in=20databa?= =?UTF-8?q?se=5Furl=20variable=20name=20The=20Flow=20model=20now=20has=20a?= =?UTF-8?q?=20relationship=20to=20the=20FlowStyle=20model,=20which=20allow?= =?UTF-8?q?s=20for=20the=20creation=20of=20a=20FlowStyle=20object=20that?= =?UTF-8?q?=20is=20associated=20with=20a=20Flow=20object.=20The=20FlowStyl?= =?UTF-8?q?e=20model=20is=20a=20new=20model=20that=20contains=20the=20colo?= =?UTF-8?q?r=20and=20emoji=20fields,=20which=20are=20used=20to=20style=20t?= =?UTF-8?q?he=20Flow=20object.=20The=20FlowStyleCreate=20and=20FlowStyleRe?= =?UTF-8?q?ad=20models=20are=20used=20to=20create=20and=20read=20FlowStyle?= =?UTF-8?q?=20objects=20respectively.=20The=20typo=20in=20the=20database?= =?UTF-8?q?=5Furl=20variable=20name=20has=20been=20corrected=20to=20ensure?= =?UTF-8?q?=20that=20the=20application=20connects=20to=20the=20correct=20d?= =?UTF-8?q?atabase.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/backend/langflow/database/models/flow.py | 7 +++++- .../langflow/database/models/flowstyle.py | 25 +++++++++++++++++++ src/backend/langflow/settings.py | 2 +- 3 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 src/backend/langflow/database/models/flowstyle.py diff --git a/src/backend/langflow/database/models/flow.py b/src/backend/langflow/database/models/flow.py index dc42da928..df042eeed 100644 --- a/src/backend/langflow/database/models/flow.py +++ b/src/backend/langflow/database/models/flow.py @@ -1,10 +1,15 @@ -from sqlmodel import Field, SQLModel +from sqlmodel import Field, SQLModel, Relationship from uuid import UUID, uuid4 +from typing import TYPE_CHECKING + +if TYPE_CHECKING: + from langflow.database.models.flowstyle import FlowStyle class FlowBase(SQLModel): name: str = Field(index=True) flow: str = Field(index=False) + style: "FlowStyle" = Relationship(back_populates="flow") class Flow(FlowBase, table=True): diff --git a/src/backend/langflow/database/models/flowstyle.py b/src/backend/langflow/database/models/flowstyle.py new file mode 100644 index 000000000..cb3fb9b2b --- /dev/null +++ b/src/backend/langflow/database/models/flowstyle.py @@ -0,0 +1,25 @@ +from sqlmodel import Field, SQLModel, Relationship +from uuid import UUID, uuid4 +from typing import TYPE_CHECKING + +if TYPE_CHECKING: + from langflow.database.models.flow import Flow + + +class FlowStyleBase(SQLModel): + color: str = Field(index=True) + emoji: str = Field(index=False) + flow_id: UUID = Field(default_factory=uuid4, foreign_key="flow.id") + flow: "Flow" = Relationship(back_populates="style") + + +class FlowStyle(FlowStyleBase, table=True): + id: UUID = Field(default_factory=uuid4, primary_key=True, unique=True) + + +class FlowStyleCreate(FlowStyleBase): + pass + + +class FlowStyleRead(FlowStyleBase): + id: UUID diff --git a/src/backend/langflow/settings.py b/src/backend/langflow/settings.py index 5b66b8d7c..1f304b67d 100644 --- a/src/backend/langflow/settings.py +++ b/src/backend/langflow/settings.py @@ -20,7 +20,7 @@ class Settings(BaseSettings): textsplitters: List[str] = [] utilities: List[str] = [] dev: bool = False - dabatabase_url: str = "sqlite:///./langflow.db" + database_url: str = "sqlite:///./langflow.db" class Config: validate_assignment = True