Annotation management (#1767)

Co-authored-by: jyong <jyong@dify.ai>
This commit is contained in:
Jyong 2023-12-18 13:10:05 +08:00 • committed by GitHub
commit a71f2863ac
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
41 changed files with 1871 additions and 67 deletions

View file

@ -6,13 +6,13 @@ from models.model import AppModelConfig
@app_model_config_was_updated.connect
def handle(sender, **kwargs):
app_model = sender
app = sender
app_model_config = kwargs.get('app_model_config')
dataset_ids = get_dataset_ids_from_model_config(app_model_config)
app_dataset_joins = db.session.query(AppDatasetJoin).filter(
AppDatasetJoin.app_id == app_model.id
AppDatasetJoin.app_id == app.id
).all()
removed_dataset_ids = []
@ -29,14 +29,14 @@ def handle(sender, **kwargs):
if removed_dataset_ids:
for dataset_id in removed_dataset_ids:
db.session.query(AppDatasetJoin).filter(
AppDatasetJoin.app_id == app_model.id,
AppDatasetJoin.app_id == app.id,
AppDatasetJoin.dataset_id == dataset_id
).delete()
if added_dataset_ids:
for dataset_id in added_dataset_ids:
app_dataset_join = AppDatasetJoin(
app_id=app_model.id,
app_id=app.id,
dataset_id=dataset_id
)
db.session.add(app_dataset_join)