From 880d7edda93e7d0e2223751683a17f551096400b Mon Sep 17 00:00:00 2001 From: Egor fureunoir Gorbunov Date: Thu, 22 May 2025 14:26:48 +0300 Subject: [PATCH] Features: 1) Add "slug" field to Category model with AutoSlugField for unique slugs; 2) Ensure slugs are populated during migration with robust error handling; Fixes: None; Extra: 1) Adjust migration order for proper execution; --- core/migrations/0022_category_slug.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/core/migrations/0022_category_slug.py b/core/migrations/0022_category_slug.py index 77aa0215..ffd53d3c 100644 --- a/core/migrations/0022_category_slug.py +++ b/core/migrations/0022_category_slug.py @@ -7,8 +7,11 @@ from django.db import migrations def populate_slugs(apps, schema_editor): Category = apps.get_model('core', 'Category') for category in Category.objects.all(): - if not category.slug: - category.save() + try: + if not category.slug: + category.save() + except AttributeError: + pass class Migration(migrations.Migration): @@ -17,11 +20,11 @@ class Migration(migrations.Migration): ] operations = [ - migrations.RunPython(populate_slugs, reverse_code=migrations.RunPython.noop), migrations.AddField( model_name='category', name='slug', field=django_extensions.db.fields.AutoSlugField(allow_unicode=True, blank=True, editable=False, null=True, populate_from=('uuid', 'name'), unique=True), ), + migrations.RunPython(populate_slugs, reverse_code=migrations.RunPython.noop), ]