Django Form 灵活布局的实现(附源码)

摘要: 用 django form  做表单,在前面写过一篇文章,你可以参考: Django Form 试用笔记 在这里面主要讲了form 的使用,form 与model的配合使用,form widget的使用,控制CSS样式等方式,form  在模板中的渲染。

用 django form 做表单,在前面写过一篇文章,你可以参考:
Django Form 试用笔记 在这里面主要讲了form 的使用,form 与model的配合使用,form widget的使用,控制CSS样式等方式,form 在模板中的渲染。
在模板中渲染的时候采用了如下方法:
1. {{form.as_p}} 2. {{form.as_ul}} 3. {{form.as_table}}
看字面意思我们应该知道被渲染成HTML的格式。但这样做,都是django自己定义的方式,一行只能显示一个field,如果想现实多个呢,比如多行多列的方式。这时候就需要自定页面布局。其实我们可以把form看作一个dict,既然是dict 就可以在模板页面iterator,也可以单独里面的数据,这样就能实现灵活布局.比如:

{% csrf_token %}
姓名{{form.yourname}} 网址{{form.website}}
Email{{form.email}} QQ{{form.qq}}

循环方式取出所有数据,类似于form.as_table:
{% csrf_token %} {%for field in form%} {%endfor%}
{{field.label}}{{field}}

采用这样的方式,就能实现自己的灵活布局,比如上面的两种方式,在程序运行之后截图如下:


整个工程源码,提供下载, 采用pydev 开发的。
点击下载此文件

上一篇: 用js实现网页滑屏解锁,类似iphone解锁功能(附源码下载)
下一篇: 用python 读写excel文件(附资料下载)

Avatar

哈哈 评论于: 2016-02-20

其实学过django的form我也觉得用form类开发表单太墨迹 还不如直接在html里写 在视图里在对数据处理来的清理明了简洁些

Avatar

Evient 评论于: 2015-11-24

呀  赞  这个方法可以不用那么麻烦的实现form生成的HTML加class。

Avatar

奶茶 评论于: 2012-11-23

7naicha.com中国奶茶网是中国最大,最彪悍的一个网。关于奶茶加盟的。布局很灵活。
[reply=轻舞肥羊,2012-11-23 04:54 PM]介个......兄弟是来干嘛的。[/reply]
 评论 ( What Do You Think )
名称
邮箱
网址
评论
验证
   
 

 


  • 微信公众号

  • 我的微信

站点声明:

1、一号门博客CMS,由Python, MySQL, Nginx, Wsgi 强力驱动

2、部分文章或者资源来源于互联网, 有时候很难判断是否侵权, 若有侵权, 请联系邮箱:summer@yihaomen.com, 同时欢迎大家注册用户,主动发布无版权争议的 文章/资源.

3、鄂ICP备14001754号-3, 鄂公网安备 42280202422812号