是否可以使用方便的{{ form.as_ul }}
功能,然后使用DetailView
,{{ object.as_ul }}
?
换句话说,我正在寻找一个DetailView,它将填充views.py中提供的field
。
这样可以避免在模板中手动键入模型的所有字段(如{{ object.first_name }}
,{{ object.last_name }}
,{{ object.address_street }}
,{{ object.address_city }}
等)。
这很容易吗?
答案 0 :(得分:1)
我不知道如何以正确的方式做到这一点,"所以我要告诉你我该怎么做。这将让你开始,直到其他人可以发布更好的答案。
def as_ul(self):
t = Template('<ul>{% for i in items %}<li>{{ i }}</li>{% endfor %}</ul>')
c = Context({'items': [getattr(self, x.name) for x in self._meta.fields]})
return t.render(c)
您可能希望稍微修改一下以过滤掉某些字段名称(例如&#39; id&#39;)。