使用简单的模型:
class Card(models.Model):
name = models.CharField(max_length=25)
rate = models.IntegerField(default=0)
good = models.BooleanField(default=False)
可以使用以下内容生成表单:
class CardForm(ModelForm):
class Meta:
model = Card
fields = '__all__'
然后通过一个简单的模板包含全部模型字段,主要部分为:
<table>
{{ form.as_table }}
</table>
但是当通过ListView
子类显示为:
class CardShow(ListView):
model = Card
template_name = 'myapp/show.html'
它仍然需要一个模板,其中所有模型字段显式命名为:
<ul>
{% for card in object_list %}
<li>{{ card.name }}, {{ card.rate }}, {{ card.good }}</li>
{% endfor %}
</ul>
有没有办法为视图(show)自动生成HTML代码,就像表单有form.as_table
,form.as_p
和form.as_ul
一样?