我想在字段前显示名称而不是

时间:2009-12-19 16:11:52

标签: python django django-forms

.. .. whatdoyoucallitanyway

我有这个型号:

class Kaart(models.Model):
    name = models.CharField(max_length=200, name="Kaardi peakiri", help_text="Sisesta kaardi pealkiri (maksimum tähemärkide arv on 38)", blank=False, null=False)
    url = models.CharField(max_length=200, blank=False, null=False, name="Asukoha URL", help_text="Täisasukoht (http://www.domeen.ee/kaart/)")
    kirjeldus = models.TextField(max_length=500, name="Kommentaar", help_text="Informatsioon / viide tegijale (mitte kohustuslik)")

然后我有这样的表格:

class KaartForm(ModelForm):
    class Meta:
        model = Kaart

我的模板中有这个代码:

{% for field in form %}
    <p>
    <label>{{ field.label }}</label>
    <em>{{ field.help_text }}</em>
    {{ field }}
    </p>
{% endfor %}

问题是field.label和field.name都显示名称,url,kirjeldus而不是我为他们设置的名称 - “Kaardi pealkiri”等。我如何才能使用它们?

2 个答案:

答案 0 :(得分:18)

您需要在模型中使用verbose_name代替name

name = models.CharField(max_length=200, verbose_name="Kaardi peakiri", help_text="Sisesta kaardi pealkiri (maksimum tähemärkide arv on 38)", blank=False, null=False)

See the docs。没有名为name的选项。

答案 1 :(得分:0)

根据the documentationModelForm小部件从label属性中提取其verbose_name值。