0

视图.py 文件

@login_required(login_url='frontpage')
def dash(request):
    events = Event.objects.all()
    if request.method == 'POST':
        form = createEventForm(request.POST)
        args = {'form':form , 'events':events}
        if form.is_valid():
            form.save(request.POST)
        return render(request, 'dashboard/index.html',args)
    else:
        form = createEventForm()
        args = {'form':form , 'events':events}
        return render(request, 'dashboard/index.html',args)

urls.py 文件

urlpatterns = [
    url('admin/', admin.site.urls),
    url(r'^$', frontviews.login),
    path('', frontviews.login, name = "login"),
    url(r'frontpage^/$', frontviews.login, name = "frontpage"),
    url(r'^dashboard/$', dashviews.dash, name = "dashboard"),#require login to fix
    url(r'^$', dashviews.logout, name = "logout"),
    url(r'^forum/$', forumviews.forumpage, name = 'forum'),
    url(r'^events/$', dashviews.EventPage, name = 'events'),
]

我希望用户需要从(网站的)首页登录,即如果他尝试使用 url[website.com/dashboard] 直接进入仪表板,我想将用户重定向到首页。任何帮助将不胜感激...

4

1 回答 1

2

只更改首页的网址。你错误的网址

url(r'frontpage^/$', frontviews.login, name = "frontpage"),

下面的网址是正确的。

url(r'^frontpage/$', frontviews.login, name = "frontpage"),

^ 匹配字符串的开头。所以它不使用网址的其他位置。

于 2020-08-09T15:28:54.823 回答