Request.Post或None

时间:2016-08-31 06:55:34

标签: django

在此youtube video

在17:52分钟,他在屏幕上有一些工作人员。 首先,这一行:

form = SignUpForm(request.POST or None)

第二行:

print request.POST['mail']

我并没有因为理解两件事而不知所措:

  1. 构造函数中的两个参数是做什么的?
  2. 为什么他说打印数据并不像他那样好?这对形式发送有什么作用?
  3. 编辑: 我的看法: 来自django.shortcuts导入渲染 来自.form import SignAlbumForm def SignUp(请求):

    form = SignAlbumForm(Request.POST)
    if form.is_valid():
        print form.save(commit=False).name
    return render(Request, 'showname/index.html', {'form':form})
    

1 个答案:

答案 0 :(得分:2)

Django表单的第一个参数用于表单数据(source

如果表单是POST,那么它将有数据,因此构造带有数据的表单实例,以便以后可以使用is_valid方法进一步验证,如果它没有因为is_valid方法调用is_bound来查看是否有数据,所以数据无法验证。

对于#2,您需要询问作者。最有可能的原因是,因为没有人会看到它,所以它毫无意义,即使它们存在,也可能是不安全的。