Django中的表单类

Django中的表单类

Table of Contents

1 Djang中表单类

Django为我们提供很多有用的模块,其中django.forms.Form类非常不错。 html中一个登录框的格式大致如下:

<form action="" method="post"> 
      <p>username: <input type="text" name="username"></p>
      <p>password: <input type="password" name="passwd"></p>
      <input type="submit" value="login">
</form>

Django中,通过视图传输的form变量,在页面格式如下:

<form action="" method="post"> {% csrf_token %}
    {{ form.as_table }}
    <input type="submit" value="login">
</form>  

视图中的LoginForm实现: 通过继承django.forms.Form,字段类型和DB模型中一样,Django已经为我们定义好了。每个字段默认是必填的,如果选填字段,可以通过 required=False实现

from django import forms

class LoginForm(forms.Form):
    username = forms.CharField(max_length=32)
    passwd   = forms.CharField(label = 'Password:', widget=forms.PasswordInput())
    email    = forms.EmailField(required=False, label = 'Your e-mail address')

通过视图类,可以更准确地检查输入内容:

form = LoginForm({'username':'user', 'passwd':'pass', 'email':'fakemail'})
form.is_valid()
=> False  

for e in form.errors:
    print(form[e].errors)

=> <ul class="errorlist"><li>Enter a valid email address.</li></ul>  

Date: 2013-08-11 20:06:55 中国标准时间

Author:



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值