问题:如何从Django框架的表单字段中获取价值?
如何从Django框架的表单字段中获取值?我想在视图中执行此操作,而不是在模板中执行此操作…
回答 0
在视图中使用表单几乎可以解释这一点。
在视图中处理表单的标准模式如下所示:
def contact(request):
    if request.method == 'POST': # If the form has been submitted...
        form = ContactForm(request.POST) # A form bound to the POST data
        if form.is_valid(): # All validation rules pass
            # Process the data in form.cleaned_data
            # ...
            print form.cleaned_data['my_form_field_name']
            return HttpResponseRedirect('/thanks/') # Redirect after POST
    else:
        form = ContactForm() # An unbound form
    return render_to_response('contact.html', {
        'form': form,
    })回答 1
选择:
def my_view(request):
    if request.method == 'POST':
        print request.POST.get('my_field')
        form = MyForm(request.POST)
        print form['my_field'].value()
        print form.data['my_field']
        if form.is_valid():
            print form.cleaned_data['my_field']
            print form.instance.my_field
            form.save()
            print form.instance.id  # now this one can access id/pk注意:该字段可用时将立即对其进行访问。
回答 2
您可以在验证数据后执行此操作。
if myform.is_valid():
  data = myform.cleaned_data
  field = data['field']另外,请阅读django文档。他们是完美的。
回答 3
要从发送过帐请求的表单中检索数据,您可以像这样
def login_view(request):
    if(request.POST):
        login_data = request.POST.dict()
        username = login_data.get("username")
        password = login_data.get("password")
        user_type = login_data.get("user_type")
        print(user_type, username, password)
        return HttpResponse("This is a post request")
    else:
        return render(request, "base.html")回答 4
我使用django 1.7+和python 2.7+,以上解决方案不起作用。表格中的输入值可以使用POST如下获取(使用与上面相同的表格):
if form.is_valid():
  data = request.POST.get('my_form_field_name')
  print data希望这可以帮助。
	声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

