Django:删除/更改HTML Django Forms中的字段文本

时间:2015-05-21 17:37:23

标签: python html django django-forms

我有一个Django表格:

from django import forms
from hello.models import Whisper

class WhisperForm(forms.ModelForm):

    class Meta:
        model = Whisper
        fields = '__all__' 

我在这样的HTML页面中显示它:

<form action="Whisper" method="post">{% csrf_token %}
    <div class="form-group">
        <p>
            {{form}}
        <p>
        <input type="submit" name="submit" value="Submit Whisper">
    </div>
</form>

表单正确显示,但以相当丑陋的方式显示模型名称,如:

Whisper:[*This is the text field]

我有什么方法可以删除模型,不粘贴文本字段或至少更改它显示的内容?

2 个答案:

答案 0 :(得分:2)

推荐的方法(如in the Django docs所述)是通过Link Binary with Libraries类形式的labels变量。

Meta

答案 1 :(得分:1)

您可以覆盖其__init__中表单的默认标签,如下所示:

class WhisperForm(forms.ModelForm):

    class Meta:
        model = Whisper
        fields = '__all__' 

    def __init__(self, *args, **kwargs):
        super(WhisperForm, self).__init__(*args, **kwargs)
        self.fields['whisper'].label = 'Whisper'