1. 名字很长,修改起来很麻烦

2.Django提供了一种方法

在urls.py中修改了名字以后,html中会自动对应做修改。这样提交表单的时候就会比较方便了。跳转到写死的某个URL。

3.根据名字indexx只能找到前缀,无法匹配后面的数字,例如detail-1中的这个数字1。想获得数字,需要重新定义一个参数来接收。

跳转了,指向了一个新的页面。

如下:表明跳转到哪个页面。第二个参数写死了,你想访问某个URL,我可以让你跳转(提交)到另外一个指定的URL.

当然了,也可以访问哪个,就还是跳转到哪个。跳转到自己所在的页面。这种的话,跳转到当前页面,看不到效果。path_info是一个内置函数,可以获取到当前url的路径。

因为render传递的时候,已经把request这个参数传过来了。所以可以直接调用。

上面的也可以改变方式传参数:<form action="{% url 'indexx' nid=1 uid=3 %}" method="POST">

这样的话,就帮URL生成了一个新的功能。跳转的功能。一点提交,就提交到了一个新的页面。

4.上面讲的是在模板语言中,基于views.py中的name生成新的URL.

在view.py中也可以根据name生成URL, 格式与上面的稍有不同。

url(r'^asdfdfdfd/(\d+)/',views.index,name='indexx')	
v=reverse('indexx',args=(90,) url(r'^asdfdfdfd/(\d+)/(\d+)/',views.index,name='indexx')
v=reverse('indexx',args=(90,88,) url(r'^asdfdfdfd/(?P<nid>\d+)/((?P<uid>\d+)/',views.index,name='indexx')
v=reverse('indexx',kwargs={'nid':1,'uid':99})

5.本节笔记

	4.name---非常重要
对URL路由关系进行命名,目的:以后可以根据此名称获取索引,进而生成自己想要的URL。
URL中的写法:
url(r'asdfsdfasd/',views.index, name='i1'),
url(r'yug/(\d+)//(\d+)/',views.index, name='i2'),
url(r'buy/(?P<pid>\d+)/(?P<nid>\d+)/',views.index, name='i3'), 在views函数里面,如果我想在def的函数里面,根据name生成新的url
def func(request, *args, **kwargs):
from django.urls import reverse
url1 = reverse('i1') #生成的就是这个url:asdfsdfasd/
url2 = reverse('i2',args=(1,2,)) #生成的就是这个url:yug/1/2
url3 = reverse('i3',kwargs={'pid':1,"nid":9}) #生成的就是这个url:buy/1/9 在模板语言里面,xxxx.html
{% url "i1" %} #asdfsdfasd/
{% url "i2" 1 2 %} #yug/1/2
{% url "i3" pid=1 nid=9 %} #buy/1/9

4.name---非常重要
对URL路由关系进行命名,目的:以后可以根据此名称获取索引,进而生成自己想要的URL。
URL中的写法:
url(r'asdfsdfasd/',views.index, name='i1'),
url(r'yug/(\d+)//(\d+)/',views.index, name='i2'),
url(r'buy/(?P<pid>\d+)/(?P<nid>\d+)/',views.index, name='i3'),

在views函数里面,如果我想在def的函数里面,根据name生成新的url
def func(request, *args, **kwargs):
from django.urls import reverse
url1 = reverse('i1')                          #生成的就是这个url:asdfsdfasd/
url2 = reverse('i2',args=(1,2,))              #生成的就是这个url:yug/1/2
url3 = reverse('i3',kwargs={'pid':1,"nid":9}) #生成的就是这个url:buy/1/9

在模板语言里面,xxxx.html
{% url "i1" %}               #asdfsdfasd/
{% url "i2" 1 2 %}           #yug/1/2
{% url "i3" pid=1 nid=9 %}   #buy/1/9

杂七杂八

	模板语言:
url(r'asdfsdfasd/',views.index, name=indexx),
{%url "indexx" %} #indexx 只能获取到前面的索引,在这里指:asdfsdfasd/。 它是没法获取到后面的数字的。 url(r'asdfsdfasd/(\d+)',views.index, name=indexx),
{%url "indexx" 3 %} #自己想跳转到哪里就跳到哪里。跳转到indexx代表的前缀-3 的网址了。基于当面URL的名称,跳转到了一个新的网址。 #当前的URL:request.path_info 编辑完某页之后,希望还是留在当前页;
编辑完某页之后,希望返回首页。 根据名字反转生成URL
from django.urls import reverse
v=reverse('indexx',args=(90,)
v=reverse('indexx',kwargs={'nid':1,'uid':99})

最新文章

  1. javaweb 中的路径问题汇总
  2. Myeclipse使用DB Browser连接数据库错误:OPTION SQL_SELECT_LIMIT=DEFAULT
  3. 161209、简要分析ZooKeeper基本原理及安装部署
  4. 转:python webdriver API 之cookie 处理
  5. 各种element/format 在manage display 下的选项
  6. 使用WMIC永久设置你的环境变量
  7. 如何在Oracle网站获取官方免费课程
  8. w3chtml页面和css书写规范
  9. iOS-image图片压缩
  10. Android插件化的思考——仿QQ一键换肤,思考比实现更重要!
  11. IntelliJ IDEA 使提示不区分大小写
  12. python访问互联网
  13. Linux:Day6(下) vim编辑器
  14. tmux 简单介绍
  15. 本地存储之sessionStorage
  16. windows 10 64bit下安装Tensorflow+Keras+VS2015+CUDA8.0 GPU加速
  17. 网络的FIN_WAIT_2状态解释和分析
  18. portfolio
  19. linux(centos 7) 下安装nodejs
  20. 英特尔和 Valve* 将英特尔&#174; Embree 光线追踪技术添加至全新 Steam* Audio 插件

热门文章

  1. day3 直方图
  2. 【LG5019】[NOIP2018]道路铺设
  3. [WC2010]重建计划 长链剖分
  4. Python接口测试实战5(下) - RESTful、Web Service及Mock Server
  5. HTTP协议请求信息详解
  6. selenium 标签页切换
  7. Python3实现机器学习经典算法(三)ID3决策树
  8. PPM、PGM、PBM图像格式剖析
  9. Twitter推广消息可使品牌线下销售额增长三成
  10. Alpha阶段第2周/共2周 Scrum立会报告+燃尽图 03