一、案例
djongo 的url传递,先通过网页输入的网址/a标签的网址,回传到urls处理,下发的对应的方法和类中。
第一种传统的url传递通过问号
![](https://img.haomeiwen.com/i6692028/53607271d300f5ce.png)
在函数通过request.GET.get('nid')接收
第二种通过正则表达式
![](https://img.haomeiwen.com/i6692028/873a290f27113e81.png)
根据url下一步传递到urls.py文件处理所以对应url改成。
![](https://img.haomeiwen.com/i6692028/d587fa0b65ffad3f.png)
对应的函数接收可以改成(多值传入时args和kwargs)
![](https://img.haomeiwen.com/i6692028/e8f20f9ad694cf57.png)
第三种通过name属性,通过name value值去urls文件找到对应的url
![](https://img.haomeiwen.com/i6692028/f8bf8f5c3e1c4916.png)
![](https://img.haomeiwen.com/i6692028/f8a39c62d32cb9a4.png)
二、Djongo 花式url
对URL路由关系进行命名, ***** 以后可以根据此名称生成自己想要的URL *****
url(r'^asdfasdfasdf/', views.index, name='案例一'),
url(r'^yug/(\d+)/(\d+)/', views.index, name='i2'),跳回固定页面
url(r'^buy/(?P<pid>\d+)/(?P<nid>\d+)/', views.index, name='i3'),
views层
def func(request, *args, **kwargs):
from django.urls import reverse
url1 = reverse('i1') # asdfasdfasdf/
url2 = reverse('i2', args=(1,2,)) # yug/1/2/
url3 = reverse('i3', kwargs={'pid': 1, "nid": 9}) # buy/1/9/
xxx.html
{% url "案例一" %} # asdfasdfasdf/
{% url "i2" 1 2 %} # yug/1/2/跳回固定页面
{% url "i3" pid=1 nid=9 %} # buy/1/9/
{request.path_info}
注:
# 当前的URL
{{request.path_info}} 获取当前页面,根据views 层中的
request返回页面
#views层的request.path_info 可以重现跳转链接地址
网友评论