1
0
mirror of https://github.com/django/django.git synced 2025-10-24 06:06:09 +00:00

Fixed #30484 -- Added conditional expressions support to CheckConstraint.

This commit is contained in:
Simon Charette
2019-11-15 00:08:36 -05:00
committed by Mariusz Felisiak
parent 37e6c5b79b
commit e9a0e1d4f6
7 changed files with 84 additions and 19 deletions

View File

@@ -18,6 +18,19 @@ class Product(models.Model):
check=models.Q(price__gt=0),
name='%(app_label)s_%(class)s_price_gt_0',
),
models.CheckConstraint(
check=models.expressions.RawSQL(
'price < %s', (1000,), output_field=models.BooleanField()
),
name='%(app_label)s_price_lt_1000_raw',
),
models.CheckConstraint(
check=models.expressions.ExpressionWrapper(
models.Q(price__gt=500) | models.Q(price__lt=500),
output_field=models.BooleanField()
),
name='%(app_label)s_price_neq_500_wrap',
),
]