What do the arguments "name__icontains" and "description__icontains" mean in a Django query filter?

It's a case-insensitive containment test.

Example:

Entry.objects.get(headline__icontains='Lennon')

SQL equivalent:

SELECT ... WHERE headline ILIKE '%Lennon%';

In your case the code says maps should be True if either the name or the description field contains the value of search_terms.


xxx_icontains searches the whole xxx field for the argument, case-insensitively.

http://docs.djangoproject.com/en/1.1/ref/models/querysets/#icontains