From e5f9ecb9e9a3198e5a32d32d63ee8cef657d6405 Mon Sep 17 00:00:00 2001 From: Mike <22396211+Dresdn@users.noreply.github.com> Date: Fri, 12 Aug 2022 13:36:26 -0700 Subject: [PATCH] chore: use Django's SlugField() for Attribute.slug --- eav/migrations/0008_use_native_slugfield.py | 21 +++++++++++++++++++++ eav/models.py | 15 +++++++-------- 2 files changed, 28 insertions(+), 8 deletions(-) create mode 100644 eav/migrations/0008_use_native_slugfield.py diff --git a/eav/migrations/0008_use_native_slugfield.py b/eav/migrations/0008_use_native_slugfield.py new file mode 100644 index 0000000..fc0d60b --- /dev/null +++ b/eav/migrations/0008_use_native_slugfield.py @@ -0,0 +1,21 @@ +from django.db import migrations, models + + +class Migration(migrations.Migration): + """Use Django SlugField() for Attribute.slug.""" + + dependencies = [ + ('eav', '0007_alter_value_value_int'), + ] + + operations = [ + migrations.AlterField( + model_name='attribute', + name='slug', + field=models.SlugField( + help_text='Short unique attribute label', + unique=True, + verbose_name='Slug', + ), + ), + ] diff --git a/eav/models.py b/eav/models.py index 76f56eb..7b24a4f 100644 --- a/eav/models.py +++ b/eav/models.py @@ -20,16 +20,10 @@ from django.db.models.base import ModelBase from django.utils import timezone from django.utils.translation import gettext_lazy as _ -from eav.logic.entity_pk import get_entity_pk_type - -try: - from django.db.models import JSONField -except ImportError: - from django_jsonfield_backport.models import JSONField - from eav import register from eav.exceptions import IllegalAssignmentException from eav.fields import CSVField, EavDatatypeField, EavSlugField +from eav.logic.entity_pk import get_entity_pk_type from eav.validators import ( validate_bool, validate_csv, @@ -42,6 +36,11 @@ from eav.validators import ( validate_text, ) +try: + from django.db.models import JSONField +except ImportError: + from django_jsonfield_backport.models import JSONField + class EnumValue(models.Model): """ @@ -201,7 +200,7 @@ class Attribute(models.Model): Upon creation, slug is autogenerated from the name. (see :meth:`~eav.fields.EavSlugField.create_slug_from_name`). """ - slug = EavSlugField( + slug = models.SlugField( verbose_name=_('Slug'), max_length=50, db_index=True,