【问题标题】:how to get the password from the database?如何从数据库中获取密码?
【发布时间】:2014-09-22 13:12:10
【问题描述】:

请帮忙通过用户名获取用户密码

views.py:

def qwe(request):
    if request.method == "POST" and request.is_ajax():
        #username = request.POST.get('username', '')        
        username ="admin"

        username_req = User.objects.filter(username=username)               

        if username_req.exists():
            pass = username_req[0].password

    return HttpResponse(pass)   

日志中的错误信息是:

IndexError: 列表索引超出范围

【问题讨论】:

  • 解释一下!为什么需要 pswd?
  • 如果您打算实现 pswd 重置功能,请参阅此链接 docs.djangoproject.com/en/1.7/_modules/django/contrib/auth/…
  • 嗯,除了 Hasan Ramezani 的好答案之外,错误与密码无关,而仅仅是因为您执行了一个空的查询集过滤器。结果列表为空,您尝试访问索引 0 处的项目。

标签: python django python-3.x


【解决方案1】:

由于安全限制,无法获取用户密码。

【讨论】:

【解决方案2】:

你会得到一个哈希,而不是明文密码。

您正在使用系统保留关键字pass。 还有一件事 - 如果找不到用户,则不会定义您的变量并引发异常。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多