0

所以我是 Django 的新手,我正在制作一个名为 accounts 的 webapp。我想在我的 urlpatterns 中有一个路径方法,每当我输入其他路径方法中未提及的 url 时,它就会将我发送到登录页面。(注意:我使用了内置的登录方法)如何实现?

网址.py

from django.urls import path, url
from . import views

from django.contrib.auth.views import login, logout

urlpatterns = [

    path('display/', views.display),
    path('', views.home),
    path('login/', login, {'template_name': 'accounts/login.html'}),
    path('logout/', logout, {'template_name': 'accounts/logout.html'}),
    path('register/',views.register, name='register'),
    url('xxxx', login, {'template_name': 'accounts/login.html'}) #here, I'd like to change 'xxxx'
]
4

1 回答 1

0

您只需要在您的条目中创建一个views.py将处理 404 的条目:

from django.shortcuts import render_to_response
from django.template import RequestContext


def handler404(request):
    response = render_to_response('your_login_template.html', {},
                              context_instance=RequestContext(request))
    response.status_code = 404
    return response

然后在你的urls.py你可以指定它:

from django.conf.urls.defaults import handler404, handler500
handler404 = 'views.handler404'

请注意,这仅DEBUG=False在您的settings.py.

于 2018-09-05T17:16:21.340 回答