Modelos do Django: faça um loop e imprima todas as propriedades disponíveis de um objeto?

Eu tenho um objeto de banco de dados chamadomanor_stats, com cerca de 30 campos. Para a maioria das linhas, a maioria desses campos será nula.

No meu modelo, gostaria de percorrer todos os campos da linha e imprimir informações apenas dos campos que não são nulos.

Por exemplo, há um campo chamado "nome": eu gostaria de imprimir<li>Name: {{ manor_stats.name }}</li>&nbsp;no modelo APENAS para os objetos em que o campo não é nulo. Idealmente, eu gostaria de extrair "Name:" de algum lugar automaticamente também, em vez de especificá-lo.

Eu sei que eu poderia usar{% if manor_stats.name %}&nbsp;para verificar se cada campo é nulo, mas não quero fazer isso 30 vezes para todos os campos.

Aqui está o que eu tenho no views.py:

manor_stats = Manors.objects.get(idx=id)
return render_to_response('place.html', { 'place' : place, 'manor_stats' : manor_stats }, context_instance = RequestContext(request))

E, em seguida, em place.html, gostaria de ter algo que funcione aproximadamente dessa maneira (pseudocódigo, com ??? indicando os bits que não sei fazer):

{% if manor_stats %} 
<ul>
 {% for manor_stats.property??? in manor_stats %} 
  {% if manor_stats.property %} 
   <li>{{ manor_stats.property.field_name??? }} {{ manor_stats.property.value??? }}</li>
  {% endif %}
 {% endfor %
{% endif %}

Espero que faça sentido ...