2013-08-11 3 views
2

У меня есть модель Chair с пустой способностью CharField под названием wood_type.Django: Элегантный способ поиска непустой строки

Я хочу отфильтровать все стулья с wood_type, который не является ''.

Какой элегантный способ сделать это с Django?

я могу думать об этом:

Chair.objects.filter(~django.db.models.Q(wood_type='')) 

Или это:

Chair.objects.filter(wood_type__regex='(.|\n)+') 

Но они уродливы, как ад. Есть ли более элегантный способ?

+1

См http://stackoverflow.com/questions/844556/django-filter-how-do-i-go-about-filtering-for-empty-or-null -names-in-a-querys –

ответ

6

Chair.objects.exclude(wood_type='') должен сделать трюк.

+0

, пожалуйста, добавьте объекты, чтобы заставить его работать. – drabo2005

+0

Извините, ноты OP обозначены. –

+0

Мне лично это не нравится ... Но маркировка как принято в любом случае, потому что я думаю, что это лучший способ в Django, вместо нового типа поиска. –

0

исключить пустую строку

Chair.objects.exclude(wood_type='') 
Смежные вопросы