zoukankan      html  css  js  c++  java
  • Django学习笔记:urlresolvers

    django.core.urlresolvers (django 1.7)

    url()

    url()函数有四个参数,regex,view,kwargs,name.前面两个是必须的

    • regex: 是用来匹配url的正则
    • view: 正则匹配之后调用的view函数,参数是HttpRequest,也可以从正则里面抓取参数
    • name: 给url起名字,可以在其他地方引用

    reverse()

    reverse(viewname[,urlconf=None, args=None, kwargs=None, current_app=None])

    reverse是用url来逆向解析访问试图view的方法

    比如现在有一个url:

    url(r'^archive/$', 'news.views.archive', name='news_archive')
    

    可以用下面几种方法来进行reverse:

    # using the python path
    reverse('news.views.archive')
    
    # using the named URL
    reverse('news_archive')
    
    # passing a callable obj
    from news import views
    reverse(views.archive)
    


    reverse的url可以带有参数args或者关键字参数kwargs,但是两种参数不能同时存在:

    from django.core.urlresolvers import reverse
    
    def myview(request):
        return HttpResponseRedirect(reverse('arch-summary', args=[1945]))
    

    这个例子重定向到另一个view并且传递参数
    如果找不到匹配,reverse()产生NoReverseMatch异常

  • 相关阅读:
    groovy-搭建环境
    isAssignableFrom
    H5调用摄像头
    php生成唯一id
    剑指Offer刷题日常
    ASCII码对照表
    用redis stream作队列的一些心得
    在 CAP 中使用 AOP ( Castle.DynamicProxy )
    office2019下载
    JVM调优浅谈
  • 原文地址:https://www.cnblogs.com/jolin123/p/4439744.html
Copyright © 2011-2022 走看看