如何访问模板中的模型字段详细名称?

时间:2020-07-31 10:49:16

标签: django django-models django-templates

该问题的答案为here,但由于它不适用于模板,因此已过时且不正确。

我正在使用标准的ListView访问模板中的对象。我想在表中显示对象,表头中的字段名称和表主体中的字段值。

这样做很简单,但是我不确定如何访问对象字段名称。您无法使用{{ object._meta.get_field[field].verbose_name }},因为_meta在模板中不可用。

例如:首先,我将要呈现的字段列表添加到上下文中:

   def get_context_data(self, **kwargs):
       context['fields'] = ['id', 'email', 'name']

然后我将它们循环到模板中

<table>
    <thead>
    {% for object in object_list %}
        {% if loop.first %}
         <tr>
          {% for field in fields %}
          // MISSING CODE //
          {% endfor %}
         </tr>
        {% endif %}
    {% endfor %}
    </thead>
    <tbody>
    {% for object in object_list %}
       <tr>
          {% for field in fields %}
          <td>{{ object[field] }}</td>
          {% endfor %}    
       </tr>
    {% endfor %}
    </tbody>
 </table>
 

这很好用,因为它只显示我想要的正文字段,但是以某种方式我需要访问对象上的字段详细名称。我想我可以在上下文中传递一个dict而不是一个列表(使用field:verbose_name键:值对),但这并不很干。

有什么想法吗?

0 个答案:

没有答案
相关问题