【问题标题】:Why do I get this valueerror when I try to validate my from via recaptcha?当我尝试通过 recaptcha 验证我时,为什么会收到此 valueerror?
【发布时间】:2016-06-09 18:54:06
【问题描述】:

我使用 django-nocaptcha-recaptcha 并遵循文档中的确切步骤:https://github.com/ImaginaryLandscape/django-nocaptcha-recaptcha

这是我的看法:

def home(request):
    if request.method == 'POST':
        form = PostForm(request.POST or None)

        if form.is_valid():
            save_it = form.save(commit=False)
            save_it.save()
            return HttpResponseRedirect(reverse(view, args=(save_it.pk,)))

    else:
        form = PostForm(request.POST or None)
        return render(request, "home.html", locals())

我在提交表单时收到此错误消息,但重新验证码仍未选中:

The view posts.views.home didn't return an HttpResponse object. It returned None instead.

我希望没有我忘记的必要信息。任何帮助将不胜感激

【问题讨论】:

    标签: python django django-views recaptcha


    【解决方案1】:

    在我点击发送后,我就想到了解决方案。我只需要返回 home.html 的渲染,以防表单无效。对不起,不必要的帖子!

    【讨论】:

      【解决方案2】:

      当您的 form.is_valid()False 时,您不会返回响应。 尝试添加:

      def home(request):
          if request.method == 'POST':
              form = PostForm(request.POST or None)
      
              if form.is_valid():
                  save_it = form.save(commit=False)
                  save_it.save()
                  return HttpResponseRedirect(reverse(view, args=(save_it.pk,)))
              else:
                  return render(request, "home.html", locals())  # new line
          else:
              form = PostForm(request.POST or None)
              return render(request, "home.html", locals())
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-01-26
        • 2019-11-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-04-20
        • 1970-01-01
        相关资源
        最近更新 更多