Возможно ли добавить ограничение на поле datetime в Postgressql с помощью Django?

Когда я пытаюсь добавить ограничение на поле closed_at, я получаю ошибку миграции django.db.utils.ProgrammingError: functions in index predicate must be marked IMMUTABLE. Можно ли это сделать?

from django.db.models.functions import Now

class ModelName():
    # Other fields 
    closed_at = models.DateTimeField()

    class Meta:
    
        constraints = [
            models.UniqueConstraint(
                fields=['field_1'],
                condition=Q(closed_at__gt=Now()),
                name='unique_field_1_constraint',
            ), 
        ]


Миграция:


class Migration(migrations.Migration):

    dependencies = [
        ('_____', '__________'),
    ]

    operations = [

        migrations.AddConstraint(
            model_name='model_name',
            constraint=models.UniqueConstraint(condition=models.Q(
                ('closed_at__gt', django.db.models.functions.datetime.Now())
            ), fields=('field_1',), name='unique_field_1_constraint'),
        ),
    ]

Вернуться на верх