Валидатор Regex производит миграцию без изменений

Django обнаруживает изменения в моделях с помощью RegexValidator, from django.core.validators import RegexValidator

url_regex_validator = RegexValidator(
        regex=r'^(\w{1,5}:\/\/)([\w\+\/-]+)([\.]\w{1,4})$',
        message="Error invalid URL")

модель:

class MyModel(models.Model):
path = models.CharField(max_length=200, default=None, blank=True, null=True, validators=[url_regex_validator])

Каждый

python manage.py makemigrations

  • Alter field path on mymodel

произвести новые миграции о regex валидаторе в этой модели. Есть идеи?

Как я нашел здесь https://code.djangoproject.com/ticket/25280#no1

Быстрое решение для обхода этой проблемы - просто скопируйте код в django.core.validators:

from django.core.validators import RegexValidator
    
    url_regex_validator = [RegexValidator(
            regex=r'^(\w{1,5}:\/\/)([\w\+\/-]+)([\.]\w{1,4})$',
            message="Error invalid URL")]

class MyModel(models.Model):
    slug = models.SlugField(unique=True, validators=url_regex_validator)
Вернуться на верх