zoukankan      html  css  js  c++  java
  • 【转载】Django form在模版中的渲染方式

    原文链接:https://www.cnblogs.com/solozorro/p/6165214.html

    form在模版中的渲染方式

    一、form.as_p

    渲染表单为一系列的p标签,每个p标签包含一个字段:

    <p> 
       <label for="id_subject">Subject:</label>
       <input id="id_subject" type="text" name="subject" maxlength="100" />
    </p>

    二、form.as_ul

    渲染表单为一系列的li标签,每个li 标签包含一个字段,它不包含ul标签:

    <li>
      <label for="id_subject">Subject:</label>
      <input id="id_subject" type="text" name="subject" maxlength="100" />
    </li>

    三、form.as_table

    输出表单为一个HTML的table:

    <tr>
      <th>
       <label for="id_subject">Subject:</label>
      </th>
      <td>
        <input id="id_subject" type="text" name="subject" maxlength="100" />
      </td>
    </tr>

    四、for field in form

    通过迭代form,获取其中的所有field。field可引用的包括{{ field.label_tag }} , {{ field }} , {{ field.errors }} :

      {% for field in form %}
      <div class="form-group">     
          {{ field.label_tag }}         
         <div class="">
            {{ field }}
         </div>
         {{ field.errors }}
      </div>
     {% endfor %}
    • field.label_tag
      {{ field.label_tag }}输出为field的label元素:
      <label for="id_message">Message:</label>
    • field
      {{ field }}输出为field的input
      <input type="text" name="message" id="id_message" />
    • field.errors
      {{ field.errors }}field的errors元素(errors一般在form验证出错的时候显示)
      ['This field is required.']

    五、form.fieldname

    直接将form作为一个dict,引用其每一个field,比如 {{ form.title }} 引用form中的title这个field:

    <div class="form-group">
       <label class="control-label">
           {{ form.title.label_tag }}    
       </label>
       <div class="">
           {{ form.title }}
       </div>
       {{ form.title.errors }}
    </div>

    这种方式一般用于form需要更加精准的样式的时候,逐个元素逐个元素的编排到html中。

  • 相关阅读:
    rabbitmq在ios中实战采坑
    网络七层架构一句话简述
    HystrixCommand实战
    前端SEO技巧
    前端面试-难点问题2-java和javascript的区别
    前端面试题--难点问题
    [微信营销企划之路]003.Access forbidden!
    [Python进阶]001.不定参数
    [安卓基础]011存储数据(中)——sqlite语法介绍
    [JavaWeb基础] 015.Struts2 表单验证框架
  • 原文地址:https://www.cnblogs.com/life-for-test/p/13782240.html
Copyright © 2011-2022 走看看