url标签使用详解:
在模版中,我们经常要写一些 url ,比如某个 a 标签中需要定义 href 属性。当然如果通过硬编码的方式直接将这个 url 写死在里面也是可以的。但是这样对于以后项目维护可能不是一件好事。因此建议使用这种反转的方式来实现,类似于 django 中的 reverse 一样。示例代码如下:
如果 url 反转的时候需要传递参数,那么可以在后面传递。但是参数分位置参数和关键字参数。位置参数和关键字参数不能同时使用。示例代码如下:
如果想要在使用 url 标签反转的时候要传递查询字符串的参数,那么必须要手动在在后面添加。示例代码如下:
如果需要传递多个参数,那么通过空格的方式进行分隔。示例代码如下:
实例代码如下:
index.html:
views.py:
# -*- coding: utf-8 -*-from django.shortcuts import renderfrom django.http import HttpResponsedef index(request): return render(request, 'index.html')def book(request): return HttpResponse('书籍')def login(request): next = request.GET.get('next') text = '你输入的url是:%s' % next return HttpResponse(text)def city(request): return HttpResponse('城市')def movie(request, myid, youid): text = '你输入的电影分类是:%s; %s' % (myid, youid) return HttpResponse(text)
urls.py:
from django.urls import pathfrom . import viewsurlpatterns = [ path('', views.index, name='index'), path('book/', views.book, name='book'), path('city/', views.city, name='city'), path('movie// /', views.movie, name='movie'), path('login/', views.login, name='login'),]