首页 > 解决方案 > Django - 登录后的PageNotFound

问题描述

Django 2.1 不遵守我在设置中的配置。登录后,我收到错误:

找不到页面 (404) 请求方法:
GET 请求 URL: http://localhost:8000/accounts/login/index.html

设置.py:

LOGIN_REDIRECT_URL = 'dashboard/index'

登录网址:

http://localhost:8000/accounts/login/

我的项目/urls.py

path('admin/', admin.site.urls),
path('', TemplateView.as_view(template_name='index/index.html'), name='index'),
path('accounts/', include('django.contrib.auth.urls')),
path('dashboard/', include('dashboard.urls')),

仪表板/urls.py

urlpatterns = [
    path('index/', views.dashboard_index, name='dashboard_index'),
]

仪表板/views.py

@login_required
def dashboard_index(request):
    return render(request, 'dashboard/index.html', {})

任何想法?

标签: pythondjango

解决方案


解决了!问题出在表单按钮上,这是错误的。没有“提交”类型并指向一个 html 页面。

前:

<a class="btn btn-primary btn-block" href="index.html">Login</a>

后:

<button type="submit" class="btn btn-primary btn-block">Login</button>

推荐阅读