1 我们为了吸收用户的数据,须要在前段页面显示一个录入数据的界面,这个界面的开拓便是表单设计,这部分的事情是后端开拓供应给前端设计岗的源数据。
2 在Python 措辞Django 框架中,后端表单开拓,不用讲究都雅、好看,只要把须要的数据能表示出来,逻辑构造清晰,解释文档详尽就可以,只有分工明确,技能分层清晰后期程序才好掩护。
3 Django表单的构造代码,比较有矩可循,常用的便是这几种构造,可以直接拿来套用。关键还是要会灵巧利用。

4 例 <form action="{% url 'polls:vote' question.id %}" method="post">{% csrf_token %}{% for choice in question.choice_set.all %}<input type="radio" name="choice" id="choice{{ forloop.counter }}" value="{{ choice.id }}" /><label for="choice{{ forloop.counter }}">{{ choice.choice_text }}</label><br />{% endfor %}<input type="submit" value="Vote" /></form>
5 上面的FORM显示一系列单选按钮,按钮的值时选项的ID,按钮的名字是字符串“choice”。这意味着,当你选择了个中某个按钮,并提交表单,一个包含数据choice=# 的POST要求将被发送到指定的url,#是当选择的选项的ID,这便是HTML表单的基本观点。如果有PHP根本的朋友该当很随意马虎理解。
Form标签的action属性和method属性该当很清楚其含义,action表示你要发送的目的url,method表示提交数据的办法,一样平常分为POST和GET。
forloop.counter是Django模板系统专门供应的一个变量,用来表示你当前循环的次数,一样平常用来给循环项目添加有序数标。在Django前端就这几个专属变量,去世记住就好了。for\endfor是前端常用的一种循环。
6 由于我们发送了一个POST要求,就必须考虑一个跨域要求假造的安全问题,简称CSRF,Django为你供应了一个大略的方法来避免这个困扰,那便是在form表单内添加一条{ % csrf_token %} 标签,标署名不可变动,固定格式,位置任意,只假如在form表单内。这个方法对form表单的提交办法方便好使,但如果是用ajax的办法提交数据,就不能用这个方法了。Python 措辞Django 框架的安全性就表示在这里。