当前位置: 首页 > 知识库问答 >
问题:

ValueError:查看帐户。意见。登录未返回HttpResponse对象。它没有返回任何结果

松钟展
2023-03-14

有人知道为什么我的代码没有在“if user not None:”行上运行吗?

回溯

1.

2.

内部服务器错误: /login/Traceback(最近一次调用最后一次):文件"C:\用户\hanya\AppData\本地\程序\Python\Python37\lib\site-包\django\core\处理程序\exception.py",第34行,在内部响应=get_response(请求)文件"C:\用户\hanya\AppData\本地\程序\Python\Python37\lib\site-包\django\core\处理程序\base.py",第137行,在_get_response中返回无而不是." % ( callback.module,view_name)值错误:视图ccount.views.登录没有返回HttpSolutions对象。它返回无。[18/Jan/2019 21:59:25]"POST /login/HTTP/1.1"500 56866

意见。派克

class Login(View):
    form_class = AccountForm
    template = 'login.html'

    def get(self, request):
        form=self.form_class(None)
        return render(request, self.template, {'form':form})

    def post (self, request):
        if request.method=="POST":
            form = self.form_class(request.POST)
            if form.is_valid():
                print('1')
                username = form.cleaned_data.get("username")
                password = form.cleaned_data.get("password")
                print('2')
                user = authenticate(username=username, password=password)
                if user is not None:
                    print('3')
                    if user.is_active:
                        login(request, user)
                        return redirect('home.html')
                    else:
                        return HttpResponse("Inactive user.")
            else:
                return render(request, 'login.html')

urls.py

urlpatterns = [
    ...
    path('emailverification/passwordchange/',  views.PasswordChange, name='passwordchange'),
]

样板

{%extends 'base_form.html'%}

{%block content%}
<div class=container-fluid>
  <form method="POST">
    {%csrf_token%}
    <label for="username">username</label>
      <input type="text" placeholder="username" name="login" required><br>
    <label for="password">password</label>
      <input type="password" placeholder="password" name="login" required><br>
    <button type="submit" class="btn btn-success">Submit</button>
  </form>


  <div class="container signin">
    <p>Do not have an account? <a href="{% url 'registration'%}">register here</a>.</p>
    <p>Forgot password?<a href="{%url 'passwordreset'%}">retrieve password</a></p>
    <p>Improve your password security.<a href="{%url 'passwordchange'%}">change password</a></p>
  </div>
<div>
{%endblock content%}

共有2个答案

雷飞虎
2023-03-14

添加代码

def clean(self, *args, **kwargs):
    username=self.cleaned_data.get("username")
    password=self.cleaned_data.get("password")
    user=authenticate(username=username, password=password)
    if not user:
        raise forms.ValidationError("This user does not exist")
    if not user.check_password(password):
        raise forms.ValidationError("Incorrect Password")
    if not user.is_active:
        raise forms.ValidationError("This user is no longer active.")
    return super(LoginForm, self).clean(*args, **kwargs)
孙宏壮
2023-03-14

您传递了一个模板名“home”。将html链接到重定向函数。您应该传递一个URL。除了url,您还可以为参数选择其他一些选项。见医生

 类似资料:
  • 我得到这个错误,而使用django 1.10.6: ValueError at /AgregarTienda视图chilegaleria.views.AgregarTienda_View没有返回HttpSolutions对象。它返回无。 这是我的看法 此外,当我添加类Meta: Model=DatosTiendas到我的forms.py文件我得到这个错误: C:\Chilegalerias 这是我

  • 问题内容: 我有以下简单的看法。为什么会导致此错误? 问题答案: 因为视图必须 返回 ,而不仅仅是调用它。将最后一行更改为

  • 我在使用MongoDB查询时遇到问题。每当我尝试通过ID或任何其他字段查找时,我总是得到零结果返回。我也很难使用“like”操作符。 我想以不区分大小写的方式查询书名。而且我知道你可以在MongoDB中这样做: 我试着装腔作势地做,但我不能让它起作用: 我看到控制台上打印出以下行:{“title”:{“$regex”:“/^harr.*/I”}} 我也尝试过一个文档,但也不成功: 结果却是零。 这

  • 问题内容: 我正在尝试向表中插入一些行…我正在使用 postgressql-7.2.jar。 我得到以下异常 org.postgresql.util.PSQLException:查询未返回任何结果。 在org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:255) 我已经用Googl

  • 问题内容: 这是我的架构 我做了这样的一个NEST查询: 并返回零元素! 如果我查看数据库(使用邮递员),则可以看到我的文档: 问题答案: 听起来您可能没有在为文档建立索引 之前 将类型的映射显式地放入索引中,所以Elasticsearch已基于所看到文档中字段的默认映射来推断该映射。例如,给定以下类型 如果我们按以下方式索引一些文档 在控制台中输出以下内容 我们没有匹配的文件。在Elastics

  • [root@externalsystem~]#curl-xpost-h'请求:{“request”:“prepareandexecute”,“connectionid”:“000000-0000-0000-00000000”,“stateMentID”:12345,“sql”:“select*FROM questtweets1”,“maxrowcount”:1}'http://here.comes