title: Django DetailView Template show display values of all fields
body: <p>I made up a template to show all the fields and values from a model, it looks like this:</p>
  
  <pre><code>## detail_template.html ##
  {% for name, value in object.get_fields %}
      &lt;p&gt;
          &lt;label&gt;{% trans name %}:&lt;/label&gt;
          &lt;span&gt;{{ value|default:"Not available" }}&lt;/span&gt;
      &lt;/p&gt;
  {% endfor %}
  </code></pre>
  
  <p>In the class you can see the get_fields function declared:</p>
  
  <pre><code>## models.py ##
  Class Object:
      ...many fields...
  
      def get_fields(self):
          return [(field.verbose_name, field._get_val_from_obj(self)) for field in self.__class__._meta.fields]
  </code></pre>
  
  <p>The problem is, when I have, for example, a CharField with choices, like:</p>
  
  <pre><code>## models.py ##
  GENDER_CHOICES = (
      ('M', 'Male'),
      ('F', 'Female'),
  )
          ...all other fields ...
      sex =   models.CharField(verbose_name=u"Sex", max_length=1, choices=GENDER_CHOICES)
  </code></pre>
  
  <p>It displays M or F, what I want to do is load the get_NAMEFIELD_display of all fields without doing manually all fields:</p>
  
  <pre><code>&lt;p&gt;
      &lt;label&gt;{% trans 'Sex' %}:&lt;/label&gt;
      &lt;span&gt;{{ object.get_sex_display|default:"Not available" }}&lt;/span&gt;
  &lt;/p&gt;
  </code></pre>
  
  <p>I have a clue: Django Contrib Admin does that when listing objects, so I'm sure there is a generic way of doing that and I also appreciate any help.</p>