urls.py:
url(r'^login_index/$', views.login_index),
url(r'^login/$', views.login),
views.py:
def login_index(request):
username = request.session.get('name', 'xx')
return render(request, 'session/index.html', {'username': username})
def login(request):
return render(request, 'session/login.html')
templates:
<a href="/login/">登陆</a>
现在把主路由下面的应用路径进行修改test/,原有的<a href="/login/">登陆</a>中的链接就无法使用了
解决方法1:修改链接路径<a href="/login/">登陆</a> 为 <a href="/test/login/">登陆</a>
但是这中方法使用起来无法处理大量链接更新
解决方法2:反向解析:
主路由修改:path('', include('wakey.urls', namespace='sss')),
子路由urlpatterns上面加上app_name = '[sss]'后修改子路由
urls.py:
url(r'^$', views.index, name='index'),
url(r'^test/(\d+)/$', views.test, name='text'),
模板中使用反向解析
<li><a href="{% url 'sss:text' stu.id %}">学生名称:{{ stu.sname }}</a></li>
反向解析接受参数:
url(r'^login/(\d+)/$', views.login, name='log'), # 注意视图中也要有参数
<a href="{{ url 'test:log' 123 }}">登陆</a>