Django开发教程 第六节 表单

来源:互联网 发布:对网络教育的评价 编辑:程序博客网 时间:2024/06/03 09:57
1、创建表单类from django import formsclass MyForm(forms.Form):    name = forms.CharField(max_length = 10, label = "Name", help_text = "Input your name")    age = forms.IntegerField(label = "Age", help_text = "Input your age")
2、创建视图模板<html><head>    <title>Form page</title></head><body>    <form action="" method="post">        {% csrf_token %}<!-- 设置跨站伪造请求保护措施 -->        {{ form.non_field_errors }}        {% for field in form %}            <div class="fieldWrapper">                {{ field.errors }}                {{ field.label_tag }} {{ field }}                {% if field.help_text %}                    <p class="help">{{ field.help_text|safe }}</p>                {% endif %}            </div>        {% endfor %}        <input type="submit" value="Submit" />    </form>    <li><a href="{% url 'form:my_form' %}">Link Address</a></li></body></html>
3、创建视图函数from django.shortcuts import renderfrom forms import MyFormfrom django.http import HttpResponseRedirectdef my_form(request):    if request.method == 'POST':        form = MyForm(request.POST)# 用POST请求数据构造表单对象        if form.is_valid():# 表单有效            cd = form.cleaned_data# 获取干净数据            return render(request, 'thanks.html', {'name': cd['name'], 'age': cd['age']})    else:        form = MyForm(initial = {'name': 'Tom', 'age': 21})# 用初始数据构造表单    return render(request, 'form.html', {'form': form})
0 0