2009-12-30 59 views
0

我創建窗體基於模型,就像看到如下:Django的變化表單字段

class ContactSelectionForm(forms.ModelForm): 

    contacts = ManyToManyByLetter(Contact, field_name="first_name") 

    class Meta: 
     model = ContactSelection 
     exclude = ('created_by',) 

當我處理這個觀點我在html的輸出字段標有「聯繫看」。 現在我想知道是否有可能改變這個輸出。例如,我想將該字段命名爲「聯繫人」,但不是「選定的聯繫人」。

這是html的模板的形式處理部分:

<form action="{{ request.path }}" method="POST"> 
     <div> 
      <fieldset class="module aligned"> 
       {% for field in form.visible_fields %} 
        <div class="form-row"> 
        {# Include the hidden fields in the form #} 
        {% if forloop.first %} 
         {% for hidden in form.hidden_fields %} 
         {{ hidden }} 
         {% endfor %} 
        {% endif %} 

        {{ field.errors }} 
        {{ field.label_tag }} {{ field }} 
        </div> 
       {% endfor %} 
       <p><input type="submit" value="Save" /></p> 
      </fieldset> 
     </div> 
    </form> 

如果有人想知道是什麼樣的形式ManyToManyByLetter(聯繫人,FIELD_NAME =「FIRST_NAME」),檢查http://code.google.com/p/django-ajax-filtered-fields/。一個非常有用的many2many JavaScript庫。

回答

3

您是否嘗試設置字段標籤? (the docs)

contacts = ManyToManyByLetter(Contact, field_name="first_name", label="Selected Contacts") 
+0

沒有我didn't嘗試過。但它的工作。謝謝。我應該更熟悉文檔,而不是試圖搜索谷歌上的所有內容。 – 2009-12-30 23:35:24

+0

不客氣。是啊。文檔非常棒。無論如何,它幾乎總是第一個搜索結果,如django + form + label – 2009-12-31 07:58:27

-2

也許這

<label for="myFIELD">...</label><input id="myFIELD" type="text" name="my_field" /> 

部分的文檔將是有益的給你