如果条件在urls.py - django

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如果条件在urls.py - django相关的知识,希望对你有一定的参考价值。

我想检查用户是否没有(没有会话)他去login.html文件,如果他(他有一个会话)他去了profile.html,但我想在urls.py查看它

我的项目树:

manage.py
url
----setting.py
mr_url
-----templates
---------url
------------profile.html
------------login
-----------------logon.html
-----views.py
-----models.py
-----urls.py

我的urls.py

from django.conf.urls import url
from . import views
from django.views.generic import TemplateView

urlpatterns =[
    url(r'^$', views.profile, name='profile'),
]

我如何在urls.py中检查用户的设置会话?

注意:我可以在views.py做,但我不想要!

答案

你可以使用login_required装饰:

from django.contrib.auth.decorators import login_required

urlpatterns =[
    url(r'^$', login_required(views.profile), name='profile'),
]

如果用户未登录,则会将其重定向到默认为accounts/login的登录页面。您可以通过在设置中设置LOGIN_URL来自定义它。

希望能帮助到你!

以上是关于如果条件在urls.py - django的主要内容,如果未能解决你的问题,请参考以下文章

Django之Urls.py模块

如果在 django 的 urls.py 中找不到,则将任何 url 重定向到 404.html

Django 路由 urls.py

Django 笔记 05 urls.py详解

使用 Django,有没有更好的方法在 urls.py 中动态导入视图?

如何在 Django 中使用来自 urls.py 的变量重定向 url 模式?