日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Django4.0教程:Django4.0使用表單-使用表單模板

您只需將表單實(shí)例放到模板的上下文中即可。因此,如果您的表單在上下文中叫 ?form ?,那么 ?{{ form }}? 將渲染它相應(yīng)的 ??和??元素。

公司主營業(yè)務(wù):網(wǎng)站建設(shè)、成都做網(wǎng)站、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)建站是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)建站推出北川羌族免費(fèi)做網(wǎng)站回饋大家。

表單渲染選項(xiàng)

對于 ?? / ?? 對,還有其他輸出選項(xiàng):

  • ?{{ form.as_table }}? 會將它們呈現(xiàn)為包裹在 ?? 標(biāo)簽中的表格單元格
  • ?{{ form.as_p }}? 會將它們呈現(xiàn)在 ?

    ? 標(biāo)簽中

  • ?{{ form.as_ul }}? 會將它們呈現(xiàn)在 ?
  • ? 標(biāo)簽中

注意,您必須自己提供外層的 ?

? 或 ?
    ? 元素。
    下面是我們 ?ContactForm ?實(shí)例用? {{ form.as_p }}? 的輸出:

    請注意,每個表單字段都有一個 ?id_? 這樣的ID屬性,它被附帶的?label?標(biāo)簽引用。這對于確保表單可供屏幕閱讀軟件這樣的輔助技術(shù)訪問非常重要

    手動渲染字段

    我們沒有必要非要讓Django來解包表單字段;如果我們喜歡,可以手動來處理(比如,讓我們對字段重新排序)。每個字段都可以用 ?{{ form.name_of_field }}? 作為表單的一個屬性,并被相應(yīng)的渲染在Django模板中。例如:

    {{ form.non_field_errors }}
    
    {{ form.subject.errors }} {{ form.subject }}
    {{ form.message.errors }} {{ form.message }}
    {{ form.sender.errors }} {{ form.sender }}
    {{ form.cc_myself.errors }} {{ form.cc_myself }}

    完整的 ?? 元素還可以使用 ?label_tag()? 來生成。例如:

    {{ form.subject.errors }} {{ form.subject.label_tag }} {{ form.subject }}

    渲染表單錯誤信息

    這種靈活性的代價(jià)需要多做一點(diǎn)工作。到目前為止,我們不必?fù)?dān)心如何顯示表單的錯誤信息,因?yàn)樗鼈円呀?jīng)幫我們處理好了。下面的例子中,我們需要自己處理每個字段的錯誤信息以及表單整體的所有錯誤信息。注意表單頂部的 ?{{ form.non_field_errors }}? 以及模板中對每個字段查找錯誤信息。

    使用 ?{{ form.name_of_field.errors }}? 顯示該字段的錯誤信息列表,它被渲染成無序列表??雌饋砣缦拢?/p>

    • Sender is required.

    該列表有一個CSS class ?errorlist ?,允許您自定義其樣式。如果你想進(jìn)一步自定義錯誤信息的顯示,您可以通過遍歷它們來實(shí)現(xiàn):

    {% if form.subject.errors %}
        
      {% for error in form.subject.errors %}
    1. {{ error|escape }}
    2. {% endfor %}
    {% endif %}

    非字段驗(yàn)證錯誤信息(或者通過使用像 ?form.as_p()? 這樣的輔助方法渲染產(chǎn)生在表單頂部的隱藏錯誤信息)渲染后會額外帶上一個class ?nonfield ?以便與字段驗(yàn)證錯誤信息區(qū)分。例如, ?{{ form.non_field_errors }}? 渲染后會像這樣:

    • Generic validation error

    遍歷表單字段

    如果您要給每個表單字段使用相同的HTML,您可以用 ?{% for %}? 依次循環(huán)遍歷每個字段來減少重復(fù)代碼:

    {% for field in form %}
        
    {{ field.errors }} {{ field.label_tag }} {{ field }} {% if field.help_text %}

    {{ field.help_text|safe }}

    {% endif %}
    {% endfor %}

    {{ field }} 的有用屬性包括:

    ?{{ field.label }}?

    字段的?label?,比如 ?Email ??address?。

    ?{{ field.label_tag }}?

    該字段的?label?封裝在相應(yīng)的HTML ?? 標(biāo)簽中。它包含表單的 ?label_suffix ?。例如,默認(rèn)的 ?label_suffix ?是一個冒號:

    ?{{ field.id_for_label }}?
    用于該字段的 ID(像上面的例子中的 id_email )。如果您要手動構(gòu)建label,您可能要用這個來替換 label_tag 。例如,如果你有一些內(nèi)嵌的JavaScript并且想要避免硬編碼字段的ID,這也很有用。
    ?{{ field.value }}?
    字段的值。例如 someone@example.com
    ?{{ field.html_name }}?
    字段名稱:用于其輸入元素的name屬性中。如果設(shè)置了表單前綴,它也會被加進(jìn)去。
    ?{{ field.help_text }}?
    與該字段關(guān)聯(lián)的幫助文本
    ?{{ field.errors }}?
    輸出一個 ?