zoukankan      html  css  js  c++  java
  • Django 路由 urls.py

    URL配置(URLconf)就像Django 所支撑网站的目录。它的本质是URL模式以及要为该URL模式调用的视图函数之间的映射表;你就是以这种方式告诉Django,对于这个URL调用这段代码,对于那个URL调用那段代码。
    
    urlpatterns = [
        url(正则表达式, views视图函数,参数,别名),
    ]

    通过循环对于多个url匹配会从上到下,匹配成功后就直接执行对应的视图函数,直接break跳出循环
    参数说明: 一个正则表达式字符串 一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串 可选的要传递给视图函数的默认参数(字典形式) 一个可选的name参数


    无命名分组
    url(r'article/(d{4})/(d{2})',views.article_year)  # 这里在正则表达式中加了2个分组,相当于向view视图函数传递了两个参数

    def article_year(request,year,month):   # 使用year和month变量接收了传递过来的两个参数
      return HttpResponse(“year:%s month:%s” %(year,month))

    命名分组
    url(r'article/(?P<year>d{4})/(?P<month>d{2})',views.article_year)  # 在分组中加入?P<命名>
    
    
    def article_year(request,year,month):   # 必须使用year和month变量接收传递过来的两个参数,因为url中命名是什么这里就使用什么名称
      return HttpResponse(“year:%s month:%s” %(year,month))


    一个可选的name参数

    url(r'register',views.register,name='reg')  # 给此url起别名为reg
    在模板文件中

    <form action='{% url ‘reg’ %}'  # reg 就对应的url中的register,当url中的register变为其它路径,不用再去修改模板文件


    URL分发

    全局的urls.py文件
    from django.conf.urls import include, url
    
    urlpatterns = [
       url(r'^admin/', admin.site.urls),
       url(r'^blog/', include('blog.urls')),  # blog/开头的url全部去blog app中的urls.py文件中去找
    ]
    在app blog中自己建立urls.py,用于处理该app中的路由关系
  • 相关阅读:
    第十二周助教总结
    第十一周助教总结
    记一次数据库mysql与tidb查询时的区别
    括号校验-Java
    (四)栈和队列的应用
    (三)栈和队列的链式存储结构
    (二)栈和队列的顺序存储结构
    windows开放服务可以远程和被访问(两台电脑可以互相访问)
    (一)栈和队列的基本概念
    (一)数据结构基本概念、存储结构、复杂度
  • 原文地址:https://www.cnblogs.com/dangrui0725/p/9611291.html
Copyright © 2011-2022 走看看