Skip to content
Snippets Groups Projects

New Process Dataset Sets management

Merged ml bonhomme requested to merge process-dataset-sets into master
All threads resolved!
3 files
+ 19
15
Compare changes
  • Side-by-side
  • Inline
Files
3
# Generated by Django 4.1.7 on 2024-03-21 12:00
import uuid
import django.db.models.deletion
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
("training", "0007_datasetset_model"),
("process", "0031_process_corpus_check_and_remove_revision_field"),
]
operations = [
migrations.CreateModel(
name="ProcessDatasetSet",
fields=[
("id", models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
("process", models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name="process_sets", to="process.process")),
("set", models.ForeignKey(on_delete=django.db.models.deletion.DO_NOTHING, related_name="process_sets", to="training.datasetset")),
],
),
migrations.AddConstraint(
model_name="processdatasetset",
constraint=models.UniqueConstraint(fields=("process", "set"), name="unique_process_set"),
),
migrations.RunSQL(
"""
INSERT INTO process_processdatasetset (id, process_id, set_id)
SELECT gen_random_uuid(), p.process_id, dss.id
FROM (
SELECT DISTINCT process_id, unnest(sets) AS set
FROM process_processdataset
) p
INNER JOIN training_datasetset AS dss ON (dataset_id = dss.dataset_id AND set = dss.name)
""",
),
migrations.RemoveField(
model_name="process",
name="datasets",
),
migrations.AddField(
model_name="process",
name="sets",
field=models.ManyToManyField(related_name="processes", through="process.ProcessDatasetSet", to="training.datasetset"),
),
migrations.DeleteModel(
name="ProcessDataset",
),
]
Loading