Django登录页面。在Formname.objects.get中传递参数(email = email,password = password))

时间:2015-08-20 10:47:14

标签: python sql django sqlite

我正在使用 Django 创建登录页面。我想知道是否可以直接使用变量 “电子邮件密码”传递 strong>查询,动态检查数据库中是否存在电子邮件ID和密码,如果存在,则Dashboard.html网站应直接打开....

try:
    u = RegisterForm.objects.get(email="ram@gmail.com", password=12345678)

虽然当我硬编码电子邮件ID和密码(这存在于数据库中)时,它会成功运行。(如上图所示)。

def mainpage(request):
   if request.method == 'POST':
        email = request.POST.get("email")
        password = request.POST.get("password")

        try:
            u = RegisterForm.objects.get(email=email, password=password)
            return render(request, 'Dashboard.html')

        except Exception:
            return render(request, 'Homepage.html')

我做错了吗?如果我做错了,请建议我正确的方法。 但在建议我正确的方式之前请帮助我解决上述问题。

当我输入MY EMAIL和MY PASSWORD时,我希望它存储在Email,Password变量中。我想在查询中使用它来检查我提供的电子邮件和密码是否存在于我的数据库中。

变量名称与表格中的列名相同....!

1 个答案:

答案 0 :(得分:0)

是的,我的工作方式......

label {
    display: inline-block;
    float: left;
    width: 45%;
    text-align: right;
    padding: 2px;
    margin: 2px;
}
input {
    display: inline-block;
    float: left;
    width: 200px;
    padding: 2px;
    margin: 2px;
}

如果您不了解Django-Authentication,并且想要以新手身份登录页面,这是最简单的登录实现。

要测试它而不实际从数据库中获取数据,您可以使用以下代码行...

def mainpage(request):
   if request.method == 'POST':
        email = request.POST.get("email")
        password = request.POST.get("password")

        try:
            u = RegisterForm.objects.get(email=email, password=password)
            return render(request, 'Dashboard.html')

        except Exception:
            return render(request, 'Homepage.html')

这里 RegisterForm 是models.py文件中的模型名称。

希望这有助于像我这样的其他新人/新手......快乐的节目