链接:https://www.jianshu.com/p/46b2aa2d5a23

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中。

form在模版中的渲 染方式的更多相关文章

  1. 程序中保存状态的方式之Cookies

    程序中保存状态的方式之 Cookies,之前写过一篇关于ViewState的.现在继续总结Cookies方式的 新建的测试页面login <%@ Page Language="C#&q ...

  2. 程序中保存状态的方式之ViewState

    程序中保存状态的方式有以下几种: 1.Application 2.Cookie 3.Session 4.ViewState:ViewState是保存状态的方式之一,ViewState实际就是一个Hid ...

  3. 表单提交中get和post方式的区别

    表单提交中get和post方式的区别有5点 1.get是从服务器上获取数据,post是向服务器传送数据. 2.get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一 ...

  4. spring-mvc整合freemarker并在ftl模版中显示服务端校验的错误信息,JSR303或者JSR349

    写法有多种,应该可以任意组合,最重要的是要引入spring.ftl 1.Bean里面的就不再多写了,来个简单就可以了 @NotEmpty(message="用户密码码不可为空") ...

  5. Form 表单提交的几种方式

    简单的总结一下form表单提交的几种方式:1.最简单的方式 就用form的submit提交方式,这种提交方式是不需要回调函数的   这种方式最近到一个form提供action路径后台接受就可以< ...

  6. PHP uxf framework 在模版中加入url标签

    1. 确保不修改discuz代码: 2. 继承discuz template类,重载parse_template 方法:由于discuz在模版引擎这一块没有考虑扩展性,对标签的解析全部写在一个方法中, ...

  7. C++ 类模板三(类模版中的static关键字)

    //类模版中的static关键字 #include<iostream> using namespace std; /* 类模板本质上是c++编译器根据类型参数创建了不同的类, c++编译器 ...

  8. JavaWeb中五种转发方式(转)

    今天本来是想找一下在jsp中实现转发的方式的,无意中看到了一篇文章,然后稍微综合了把服务器端的转发也包括在内.   1. RequestDispatcher.forward() 是在服务器端起作用,当 ...

  9. 8. Smarty3:模版中的内置函数

    smarty3中对内置函数的修改比較大,加入了很多新的功能:变量声明.表达式,流程控制,函数.数组等.可是建议不要在模版中去使用过于复杂的逻辑,而是要尽量将一些程序设计逻辑写到PHP中,并在模版中採用 ...

随机推荐

  1. C# Equals

    [C# Equals] 1.Object.Equals() The type of comparison between the current instance and the obj parame ...

  2. Kibana(elasticsearch操作工具)的安装

    在安装完es集群的基础上 1.创建文件夹并赋权 # 使用root进行操作 mkdir -p /export/data/kibana mkdir -p /export/logs/kibana # 赋权给 ...

  3. 网站转为https协议,苹果商店应用转为https协议总结

    log_format www.44755.com '$remote_addr - $remote_user [$time_local] "$request" ' '$status ...

  4. kalman处理realsense数据

    代码来自:https://www.cnblogs.com/zjuhjm/archive/2012/12/29/2838472.html import numpy as npimport matplot ...

  5. highchart 曲线图

    $(function() { Highcharts.setOptions({ global: { useUTC: false } }); var chart = new Highcharts.Char ...

  6. linux常用的一些命令行操作(ubuntu)

    软件安装 sudo apt-get install xxx 压缩和解压缩 1. *.tar 用 tar –xvf 解压 2. *.gz 用 gzip -d或者gunzip 解压 3. *.tar.gz ...

  7. matrix derivatives

    来源:cs229 stanford Machine Learning Notes

  8. 一起做RGB-D SLAM (3)

    第三讲 特征提取与配准 2016.11 更新 把原文的SIFT替换成了ORB,这样你可以在没有nonfree模块下使用本程序了. OpenCV可以使用 apt-get install libopenc ...

  9. 视觉SLAM实战(一):RGB-D SLAM V2

    写在前面 首先打个广告.SLAM研究者交流QQ群:254787961.欢迎各路大神和小白前来交流. 看了前面三篇博文之后,是不是有同学要问:博主你扯了那么多有用没用的东西,能不能再给力一点,拿出一个我 ...

  10. es学习-基础增删改查

    创建库 插入数据 修改文档: 查询文档: 删除文档: