Django的Admin是一个设计的比较成熟的专门解决后台管理的组件,也是很多人选择Django的一个重要原因。 我在想,如果把这个优秀的东西用在前台的设计上,一定能省很多时间。于是稍微动了点手脚,几乎没写几行代码,就完成了一个:带日期选择和错误提示的上传页面。 首先,在froms.py里,导入admin的from: from django.contrib.admin import widgets 然后,再覆盖原有的日期表单,假设这样: date = forms.DateTimeField(widget=widgets.AdminDateWidget(), label=u'时间') 最后,在前端页面,附上这些资源: <link rel="stylesheet" type="text/css" href="/media/css/base.css" /> <link rel="stylesheet" type="text/css" href="/media/css/forms.css" /> <script type="text/javascript" src="/admin/jsi18n/"></script> <script type="text/javascript" src="/media/js/core.js"></script> 最后,在表单渲染的位置上,这样调用即可: {{ form.media }} {{ form.as_p }} 最后,该页面就会呈现一个漂亮的日历选择器,还有漂亮的错误提示。如下图: 
我没写一行JS,没写一行CSS…嘿嘿 原文: http://cnmsdn.com/html/201004/1270535813ID3307.html 
PS:这里有一个问题,如果用户没有登陆admin的管理界面的话,时间控件就不会正常显示,具体原因我也不清楚为什么.如果大家遇到无法显示控件的时候最好看一些是否登录过admin后台.
|