我使用Django ready LoginView类制作了一个登录表单,但idk解释了为什么它不起作用。这是密码
视图.py
from django.shortcuts import render, redirect
from django.contrib.auth import views as auth_views
from django.contrib.auth.forms import AuthenticationForm
def main(request):
if request.method == 'POST':
loginform = auth_views.LoginView.as_view(template_name='main/index.html')
loginform(request)
return redirect('signup')
loginform = AuthenticationForm(request)
return render(request, 'main/index.html', {'loginform': loginform})
url.py
from django.contrib import admin
from django.urls import path, include
from . import views
urlpatterns = [
path('', views.main, name='main'),
path('signup/', include('signup.urls')),
path('admin/', admin.site.urls),
]
HTML
<div class="log-outside">
<div class="log-inside">
{% csrf_token %}
{{ loginform }}
<button type="subbmit">Log in</button>
</div>
</div>
如果要更改
LoginView
中的template_name
,最简单的方法是更改urls.py
:您可以使用
settings.py
文件中的以下设置重定向未登录的用户相关问题 更多 >
编程相关推荐