我的目标是让用户输入他们的用户名和密码,然后在数据库中检查它是否正确,以允许他们登录或拒绝访问。目前,我进行了设置,以便在html页面中询问他们的信息,然后调用用户身份验证页面的URL,然后转到视图文件,然后检查数据库是否匹配。我写了一些代码,但我一直遇到错误,我似乎无法弄清楚如何解决它。
这是否是正确的设置,用于检查用户信息,即使是正确的方法,也可以采用另一种方式更有效地进行此操作?这是我现在的代码。
HTML页面:
urlpatterns = [
url(r'^user_authentication/$', views.user_authentication, name='user_authentication'),
]
urls.py:
def user_authentication(request):
username = request.GET.get('username')
password = request.GET.get('password')
if (username == "Stack" and password == "Overflow"):
return render(request, 'next url goes here')
views.py:
{{1}}
我尝试使用GET,但这不起作用。我还没有数据库设置,所以现在我只是硬编码用户名和密码要求才能进入下一个网址。
答案 0 :(得分:0)
您只需要一个简单的HTML表单。
<form action="{% url 'user_authentication' %}" method="GET">
<div>
<label for="username">Username</label>
<input name="username" id="username">
</div>
<div>
<label for="password">Password</label>
<input name="password" id="password">
</div>
<div>
<input type="submit">
</div>
</form>
&#13;
这将在GET参数中发送您的用户名和密码(显然在您将使用POST的真实站点中,并从Django中的request.POST
获取数据)。
注意,这是所有基本的Web开发,并没有特定于Django;您可以从介绍HTML教程中受益。