我嘗試在模板中顯示模型中字段的名稱。 這適用於除ManyToManyField以外的任何類型的字段。在模板中顯示多對多關係的名稱
我在我的models.py中使用這個函數來返回所有的字段。
def get_all_fields(self):
"""Returns a list of all field names on the instance."""
fields = []
# only display fields with values and skip some fields entirely
if f.editable and value and f.name not in ('id','lastname','firstname') :
fields.append(
{
'label':f.verbose_name,
'name':f.name,
'value':value,
})
return fields
在我的模板我用這個循環來顯示所有字段:
{% for f in modelname.get_all_fields %}
<td>{{f.label|capfirst}}</td><td>{{f.value|escape|urlize|linebreaks}}</td>
{% endfor %}
正如前面提到的,這個工作正常,除了ManyToManyFields各個領域。 例如我的M2M關係的一個看起來是這樣的:
family = models.ManyToManyField('family', related_name="family", null=True, blank=True)
我很感謝這有助於解決這個每個提示。
問候 康拉德
什麼都沒有發生。 – Conrad