On Wed, Mar 3, 2010 at 7:52 AM, harryos <oswald.ha...@gmail.com> wrote: > > hi > I am passing a dictionary to the template > say, > objects_status={obj1:True, obj2:False, obj3:True } > > In the template I want to show something like > > {%if not len(objects.status ) %} # just to clarify the purpose..I > know len will not work > No objects to show > > {% else %} > Objects are: > .....show the objects and truth values in a table .... > > {%endif %} > > > But how can I check the size of the dictionary? If it was a Queryset I > could have used qset.count ..but here it would not work. > Can somebody help? > > thanks > harry >
For this specific example, you could use the for .. empty[1] template tag, and look at objects.items(), eg: {% for obj, status in objects_status.items %} {{ obj }} {% empty %} No objects {% endfor %} If you actually wanted to access the size of the dictionary, you should use the length[2] template filter, eg: There are {{ objects_status.items|length }} object(s). Cheers Tom [1] http://docs.djangoproject.com/en/1.1/ref/templates/builtins/#for-empty [2] http://docs.djangoproject.com/en/1.1/ref/templates/builtins/#length -- You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-us...@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.