一、 URL参数在view中传递

1、带参数名:通过named group方式传递指定参数,语法为: (?P<name>pattern), name 为传递参数的名称,pattern代表所要匹配的模式。如下:

  url(r'^articles/(?P<year>[0-9]{4})/(?P<month>[0-9]{2})/$', views.month_archive)

中:year,month为参数名,而后面紧跟的则代表正则表达匹配的模式。

比如某个具体的URL为:http://0.0.0.0:8081/kingadmin/2017/09/(黄色部分为域名),对应view处理函数如下:

def month_archive(request,year,month):

      print(year,month)
    return render(request,"kingadmin/index.html",locals())

其中:app_name 和 model_name对应url中传递过来的参数值year值为:2017,month值为9

2、不带参数名:语法为: (r'pattern1/pattern2/'), pattern代表所要匹配的模式。如下:

  url(r'^(\w+)/(\w+)/$', views.table_data_list)

比如某个具体的URL为:http://0.0.0.0:8081/kingadmin/crm/customer/(黄色部分为域名),对应view处理函数如下:

def table_data_list(request,app_name,model_name):

    admin_obj = base_admin.site.registered_sites[app_name][model_name]
    return render(request,"kingadmin/table_data_list.html",locals())

其中:app_name 和 model_name对应url中传递过来的参数值app_name值为:crm,model_name值为customer

 

二、Templates href格式

href="{% url ‘name’ params %}"

其中:name为url.py 文件中某个url配置的name别名,params某个url对应的各个参数具体值,使用如下:

#在url.py的url中添加一个url,name参数为:name='app-views-func'

urlpatterns = [
  url(r'^(\w+)/(\w+)/(\d+)/delete/$', views.table_delete,name='table_delete'),
]
#
href="{% url 'table_delete' 3 2 1 %}" #url中有三个参数(\w+)/(\w+)/(\d+),所以要传入三个具体的参数值3 2 1
生成的url如下:
http://0.0.0.0:8081/3/2/1/delete/

django URL参数在view中传递和Template的反向解析方式的更多相关文章

  1. [py]django url 参数/reverse和HttpResponseRedirect

    参考 需要完成以下任务 - 访问http://127.0.0.1:8000/ 返回"hello maotai"或home.html - 访问http://127.0.0.1:800 ...

  2. django url路径与模板中样式相对路径的问题

    static目录下有css和js及image等文件夹,里面放置网站的一些静态文件,static位于网站根目录下,django中配置静态文件这个就细说,网上都有,昨天在添加新内容时发现一个问题,我的ur ...

  3. SQL中in参数在存储过程中传递及使用的方法

    背景: 1.使用存储过程 2.存储过程中有in 3.in括号里面的内容作为参数传递 解决方案: 1.直接拼接sql 可在存储过程中拼接字符串,然后执行此字符串,类似于js中的eval PROCEDUR ...

  4. Django---路由系统,URLconf的配置,正则表达式的说明(位置参数),分组命名(捕获关键字参数),传递额外的参数给视图,命名url和url的反向解析,url名称空间

    Django---路由系统,URLconf的配置,正则表达式的说明(位置参数),分组命名(捕获关键字参数),传递额外的参数给视图,命名url和url的反向解析,url名称空间 一丶URLconf配置 ...

  5. Django学习笔记之Django的url反向解析

    0x00 URL反向解析和三种不同的反向解析方式 Django中提供了关于URL的映射的解决方案,可以做两个方向的使用: 1.普通解析过程:由客户端的浏览器发起一个url请求,Django根据URL解 ...

  6. Django路由系统-URL命名&URL反向解析

    命名URL和URL反向解析 前言 起始样式,HTML中的href是写死的,不能更改,如下示例代码: # urls中 urlpatterns = [ url(r'^admin/', admin.site ...

  7. Unity3d webplayer获取url参数

    Unity3d webplayer获取url参数 1.Unity中代码,在Start方法中调用了HTML的GetUrl方法!Application.ExternalCall( "SayHel ...

  8. Django url (路由)

    1.路由的基本使用 #url 是个函数,有四个参数,第一个参数要传正则表达式,第二个参数传函数内存地址,第三个传默认参数,第四个传路由别名 ​ url(r'^yaopipqideneirong/art ...

  9. django url别名和反向解析 命名空间

    url别名和反向解析 我们平时写的url名字都是死的,如果项目过大,需要项目中某个文件名改动一下,那么改动起来就不是一般的麻烦了,所以我们就在定义的时候给url起一个别名,以后不管哪个文件中运用都是用 ...

随机推荐

  1. Java面试题-字符串操作

    题目:输入一行字符,分别统计出其中英文字母,空格,数字和其他字符个数 //创建一个容器,用来保存结果,英文字母空格数组和其他字符做key,个数为value Map<String,Integer& ...

  2. JAVA高并发处理------多线程

    线程安全概念:当多个线程访问某一个类(对象或方法)时,这个对象始终都能表现出正确的行为,那么这个类(对象或方法)就是线程安全的. 分析:当多个线程访问myThread的run方法时,以排队的方式进行处 ...

  3. The XOR Largest Pair

    刷刷书上的例题 在给定的N个整数A1,A2……An中选出两个进行XOR运算,得到的结果最大是多少?N<=105,0<=Ai<231 SOlution: 我们思考到对于两个数相异或,是 ...

  4. [NOI.AC省选模拟赛3.23] 染色 [点分治+BFS序]

    题面 传送门 重要思想 真的是没想到,我很久以来一直以为总会有应用的$BFS$序,最终居然是以这种方式出现在题目中 笔记:$BFS$序可以用来处理限制点对距离的题目(综合点分树使用) 思路 本题中首先 ...

  5. 【NOIP模拟赛】 permutation 数学(打表)

    biubiu~~~ 这道题卡读题卡得很死......首先他告诉我们读循环的时候要顺着圈读,然后又说这个圈在数列上要以最大数开始读,而且以这样的循环的首数排序,得到的序列与原序列一样那么他就是可行序列, ...

  6. CVPR2014 Objectness 源码转换(完整版) VS2012 X64 –>win32

    一.版本转换  1.将源码中vs2012 X64版本转换为vs2012 win32版本. 2.源码下载及其相关资料下载http://mmcheng.net/zh/bing/ 3.需要下载源码(Pape ...

  7. HttpClient测试类请求端和服务端即可能出现乱码的解决

    junit HttpClient 请求端 代码: package com.taotao.httpclient; import java.util.ArrayList; import java.util ...

  8. grub ubuntu启动

    set root=(hd0,gpt10) 现在变为 gpt9 了 安装固态后.变成了 (hd1,gpt11) set prefix=(hd0,gpt10)/boot/grub insmod norma ...

  9. region xx not deployed on any region server

    ERROR: Region { meta => month_hotstatic,860010-2288000000_201405_5_exit_00000047486,1400144486405 ...

  10. Codis+redis 集群测试

    Codis 是一个分布式 Redis 解决方案, 对于上层的应用来说, 连接到 Codis Proxy 和连接原生的 Redis Server 没有显著区别 (不支持的命令列表), 上层应用可以像使用 ...