2013-03-26 2 views
8

У меня есть следующий класс:фильтр QuerySet на пустой ImageField

class Book(models.Model): 
    picture = models.ImageField(upload_to='books/', blank=True, null=True) 
    ... 

теперь я хочу, чтобы отфильтровать книги без картинки. Я попытался следующие:

Book.objects.filter(picture__isnull=True) 

Проблема в том, что картина является пустой VARCHAR («») в БД, а не нулевой. Что делать?

ответ

14

Попробуйте это:

Book.objects.filter(picture__exact='') 
+0

LOL мой запрос не так, я положил его в исключения. Вы получили правильный ответ – catherine

+0

Получил это от вашего ответа :) – arulmr

0

Просто запустите исключить метод:

Books.objects.exclude(picture='')