-
Notifications
You must be signed in to change notification settings - Fork 5.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: add 'tags' column to 'flow' table and update models (#3986)
* Add 'tags' column to 'flow' table and update models - Added migration script to include 'tags' column in 'flow' table. - Updated `Flow` model to include `tags` field. - Introduced `Tags` enum in `schema.py` for predefined tag values. * Update `tags` column to use JSON type in Flow model * Add conditional checks for 'tags' column in Alembic migration script * Make 'tags' field nullable in Flow model * Add default value for 'tags' field in Flow model * Update default values for 'tags' field in Flow model
- Loading branch information
1 parent
e395cb7
commit b6546e4
Showing
3 changed files
with
49 additions
and
0 deletions.
There are no files selected for viewing
41 changes: 41 additions & 0 deletions
41
src/backend/base/langflow/alembic/versions/d2d475a1f7c0_add_tags_column_to_flow.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
"""add tags column to flow | ||
Revision ID: d2d475a1f7c0 | ||
Revises: d3dbf656a499 | ||
Create Date: 2024-10-03 13:33:59.517261 | ||
""" | ||
from typing import Sequence, Union | ||
|
||
import sqlalchemy as sa | ||
import sqlmodel | ||
from alembic import op | ||
from sqlalchemy.engine.reflection import Inspector | ||
|
||
from langflow.utils import migration | ||
|
||
# revision identifiers, used by Alembic. | ||
revision: str = 'd2d475a1f7c0' | ||
down_revision: Union[str, None] = 'd3dbf656a499' | ||
branch_labels: Union[str, Sequence[str], None] = None | ||
depends_on: Union[str, Sequence[str], None] = None | ||
|
||
|
||
def upgrade() -> None: | ||
conn = op.get_bind() | ||
# ### commands auto generated by Alembic - please adjust! ### | ||
with op.batch_alter_table('flow', schema=None) as batch_op: | ||
if not migration.column_exists(table_name='flow', column_name='tags', conn=conn): | ||
batch_op.add_column(sa.Column('tags', sa.JSON(), nullable=True)) | ||
|
||
# ### end Alembic commands ### | ||
|
||
|
||
def downgrade() -> None: | ||
conn = op.get_bind() | ||
# ### commands auto generated by Alembic - please adjust! ### | ||
with op.batch_alter_table('flow', schema=None) as batch_op: | ||
if migration.column_exists(table_name='flow', column_name='tags', conn=conn): | ||
batch_op.drop_column('tags') | ||
|
||
# ### end Alembic commands ### |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
6 changes: 6 additions & 0 deletions
6
src/backend/base/langflow/services/database/models/flow/schema.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
from enum import Enum | ||
|
||
|
||
class Tags(str, Enum): | ||
CHATBOTS = "chatbots" | ||
AGENTS = "agents" |