zoukankan      html  css  js  c++  java
  • URL的命名和反向解析

    1. 分组

        url(r'^del_publisher/(d+)', views.del_publisher),
    
        匹配到参数,按照位置参数的方式传递给视图函数  视图函数需要定义形参接收变量  

    2. 命名分组

        url(r'^blog/(?P<year>d{4})/[1-9]{2}/$', views.blog)
    
        匹配到参数,按照关键字参数的方式传递给视图函数  视图函数需要定义关键字参数

    3. 从URL上捕获的参数都是字符串类型

    4. include其他的urls.py

    from django.conf.urls import url,include
    urlpatterns = [
        url(r'^admin/', admin.site.urls),
        url(r'app01/',include('app01.urls')),
        url(r'app02/',include('app02.urls'))
    ]

    5. URL的命名和反向解析 ***

    普通url情况:

      命名

    url(r'^publisher_list/', views.publisher_list, name='publisher'),

      使用

      视图函数中views 使用

    rom django.urls import  reverse
    
        reverse('publisher')   ——》 ‘/app01/publisher_list/’

      在模板 html中的使用

    {% url 'publisher' %}   ——》 ‘/app01/publisher/’

    使用分组:

        url(r'^blog/(d{4})/([1-9]{2})/$', views.blog, name='blog')
        
    
        视图中使用
    
        reverse('blog',args=('2018','12'))         ‘/blog/2018/12/'
        
    
        模板中使用
    
        {% url  ’blog‘  ’2018‘  ’12‘  %}    

    使用命名分组

        url(r'^blog/(?P<year>d{4})/(?P<month>[1-9]{2})/$', views.blog, name='blog')
      
    
        视图中使用
    
        reverse('blog',args=('2018','12'))         ‘/blog/2018/12/'
    
        reverse('blog', kwargs={'month': '12', 'year': '2018'})
       
    
        模板中使用
    
        {% url 'blog'  '2018' '12' %}   ——》 ‘/blog/2018/12/'
    
        {% url 'blog'  year='2018' month='12' %}    ——》  ‘/blog/2018/12/' 
    
        {% url 'blog'  month='12' year='2018'  %}    ——》  ‘/blog/2018/12/'

    6. namespace

    url(r'app01/',include('app01.urls',namespace='app01')),
    url(r'app02/',include('app02.urls',namespace='app02'))
    url(r'^home/$', views.home, name='home'),   # app01
    视图:  
    
        reverse(’app01:home‘)    ——》 /app01/home/
    
        reverse(’app02:home‘)    ——》 /app02/home/
    
    模板:
    
        {% url 'app01:home' %}   —》 /app01/home/
  • 相关阅读:
    设计模式复习-状态模式
    设计模式复习-观察者模式
    设计模式复习-建造者模式
    设计模式复习-外观模式
    推荐算法-协同过滤
    设计模式复习-模板方法模式
    设计模式复习-原型模式
    设计模式复习-代理模式
    神经网络与机器学习 笔记—泛化和交叉验证
    神经网络与机器学习 笔记—改善反向传播的性能试探法
  • 原文地址:https://www.cnblogs.com/kenD/p/10073658.html
Copyright © 2011-2022 走看看