Django开发教程 第六节 表单

1、创建表单类
from django import forms
class 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 render
from forms import MyForm
from django.http import HttpResponseRedirect

def 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})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值