Django Query __isnull = True or = None Это простой вопрос. Я хотел бы знать, если то же самое написать: queryset = Model.objects.filter(field=None) чем: queryset = Model.objects.filter(field__isnull=True) Я использую django 1.8 Ответ 1 Они равны: >>> str(Person.objects.filter(age__isnull=True).query) == str(Person.objects.filter(age=None).query) True >>> print(Person.objects.filter(age=None).query) SELECT "person_person"."id", "person_person"."name", "person_person"."yes", "person_person"."age" FROM "person_person" WHERE "person_person"."age" IS NULL >>> print(Person.objects.filter(age__isnull=True).query) SELECT "person_person"."id", "person_person"."name", "person_person"."yes", "person_person"."age" FROM "person_person" WHERE "person_person"."age" IS NULL
Ответ 1 Они равны: >>> str(Person.objects.filter(age__isnull=True).query) == str(Person.objects.filter(age=None).query) True >>> print(Person.objects.filter(age=None).query) SELECT "person_person"."id", "person_person"."name", "person_person"."yes", "person_person"."age" FROM "person_person" WHERE "person_person"."age" IS NULL >>> print(Person.objects.filter(age__isnull=True).query) SELECT "person_person"."id", "person_person"."name", "person_person"."yes", "person_person"."age" FROM "person_person" WHERE "person_person"."age" IS NULL