Django 反向解析

Django学习第十二天

Django反向解析在实际项目中应用广泛,因为其作用使得在编写路径时不用在输入类似于’/user/login’这种形式,而且有时这类写法还容易出错。
模板中反向解析的模板语言写法以及需要设置的参数。(笔者使用的为Django2.1.2版本,与Django1.8.x版本略有不同)
user/urls.py

from django.urls import re_path
app_name = 'user'
urlpatterns = [
    re_path(r'register',RegisterView.as_view(),name='register'),#注册
    re_path(r'repassword',RePasswordView.as_view(),name='repassword'),#修改密码
    re_path(r'active/(.+)',ActiveView.as_view(),name = 'active'),#激活
    re_path(r'^login$',LoginView.as_view(),name = 'login'),#登录
]

django项目同名文件夹下的urls.py

from django.contrib import admin
import apps.user.urls
import apps.cars.urls
from django.urls import re_path
from django.conf.urls import url,include
urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^user/', include(apps.user.urls,'user')),
]

模板中使用

<a href="{% url 'user:register' %}">注册</a>

通过反向解析向后端传参

<a href="{% url 'user:active' 123456 %}"></a>

笔者目前才刚刚开始django的学习,如有错误之处,请大牛见谅指出

原文地址:https://www.cnblogs.com/big-cabbage/p/10300366.html