{{{
class NulledTextField(models.TextField):
pass
@NulledTextField.register_lookup
class NulledTransform(models.Transform):
lookup_name = 'nulled'
template = 'NULL'
class TestModel(models.Model):
nulled_text_field = NulledTextField(null=True)
>>> Season.objects.filter(nulled_text_field__nulled__isnull=True).exists()
True
>>> Season.objects.filter(nulled_text_field__nulled__exact=None).exists()
False
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/28453>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
* status: new => assigned
* owner: nobody => Sergey Fedoseev
--
Ticket URL: <https://code.djangoproject.com/ticket/28453#comment:1>
* has_patch: 0 => 1
Comment:
[https://github.com/django/django/pull/8827 PR]
--
Ticket URL: <https://code.djangoproject.com/ticket/28453#comment:2>
* component: Uncategorized => Database layer (models, ORM)
* type: Uncategorized => Bug
* stage: Unreviewed => Ready for checkin
--
Ticket URL: <https://code.djangoproject.com/ticket/28453#comment:3>
* status: assigned => closed
* resolution: => fixed
Comment:
In [changeset:"0baea920c865ae2d40a4e1d9281e25327fc0dbe5" 0baea920]:
{{{
#!CommitTicketReference repository=""
revision="0baea920c865ae2d40a4e1d9281e25327fc0dbe5"
Fixed #28453 -- Made __exact=None lookup use transforms.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/28453#comment:4>