热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Django重点之url别名

 django重点之url别名[参数名必须是name,格式是name"XXX]1不论后台路径如何进行修改路径,前台访问的路径不变,永远是alias,这样方

 

django重点之url别名[参数名必须是name,格式是name="XXX]

1 不论后台路径如何进行修改路径,前台访问的路径不变,永远是alias, 这样方便开发
2 
3 前台根据 {{ url "alias"}} 去views.py中查看name="alias"的url
1 'DIRS': [os.path.join(BASE_DIR, 'templates')],  # 设置templates的路径为Django以前版本
2 # 'DIRS': [],      # 注释掉该行,此为Django 2.0.1最新版本
3 # 'django.middleware.csrf.CsrfViewMiddleware',
4          ...省略默认配置
5 STATIC_URL = '/static/'
6 TEMPLATE_DIRS = (os.path.join(BASE_DIR,  'templates'),)  # 原配置
7 # 静态资源文件
8 STATICFILES_DIRS = (os.path.join(BASE_DIR, "statics"),)   # 现添加的配置,这里是元组,注意逗号

 

templates/aliax.html:

 

 1 
 2 "en">
 3  "UTF-8">
 4 
 5 {##} {# 这个是最开始的路径,正常路径 #}
 6 {#    {# 报错,NoReverseMatch at /func_alias/ #}
 7 "{% url 'alias' %}" method="post">   {# 注意,action外部没有引号,大括号里面url 引号XXX #}
 8     "text" name="user">      {#    注意,这里只能用name,不能用id哈  #}
 9     "password" name="pass">  {#    注意,这里只能用name,不能用id哈  #}
10     "submit" value="submit">
11 
12 
13 

 

mysite2/urls.py

 

from django.contrib import admin
from django.urls import path
from blog import views
from django.conf.urls import url
urlpatterns = [
     # URL第四个参数别名操作,name="XXXX",name里面的值代表的是我们的URL路径
    url(r'^func_alias', views.func_alias, name="alias"), # 将路径名跟函数进行映射
]

 

views.py

 1 from django.shortcuts import render, HttpResponse
 2 import datetime 
 3 # URL之别名操作
 4 def func_alias(request):
 5     if request.method == "POST":
 6         username = request.POST.get("user")
 7         password = request.POST.get("pass")
 8         if username == "hhh" and password == "123":
 9             print("username: %s  password: %s" % (username, password))
10             return HttpResponse("登录成功".encode("utf8"))
11     return render(request, "alias.html")

 

 

 

 

 

 

 1 1、url的语法
 2 url(regex,views,kwargs,name)
 3 name:为了给当前的url或地址起别名,反向解析时用。
 4 反向解析:通过name的值来匹配出对应的regex(地址)
 5 url(regex,views,kwargs=None,name='别名')
 6 
 7 2、在模板中通过别名找地址
 8 {% url '别名' %}
 9 
10 带参数的别名
11 {% url '别名' 参数1 参数2 ... %}(中间是空格)
12 
13 eg:
14 url(r'^test_server/(\d+)/(\w+)$',test_server_views,name="test_server"),
15 

'{% url "test_server" 5 "jing" %}'>点我

16 def test_server_views(request,name,age): 17 18 19 20 eg: 21 url(r'^test_server/$',test_server_views, 22

"/test_server/?name=jing&age=18">点我

23 def test_server_views(request,name,age): 24 # print(request.GET["age"])

 


推荐阅读
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • 在Xamarin XAML语言中如何在页面级别构建ControlTemplate控件模板
    本文介绍了在Xamarin XAML语言中如何在页面级别构建ControlTemplate控件模板的方法和步骤,包括将ResourceDictionary添加到页面中以及在ResourceDictionary中实现模板的构建。通过本文的阅读,读者可以了解到在Xamarin XAML语言中构建控件模板的具体操作步骤和语法形式。 ... [详细]
  • 使用圣杯布局模式实现网站首页的内容布局
    本文介绍了使用圣杯布局模式实现网站首页的内容布局的方法,包括HTML部分代码和实例。同时还提供了公司新闻、最新产品、关于我们、联系我们等页面的布局示例。商品展示区包括了车里子和农家生态土鸡蛋等产品的价格信息。 ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • SpringMVC接收请求参数的方式总结
    本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
  • 基于Socket的多个客户端之间的聊天功能实现方法
    本文介绍了基于Socket的多个客户端之间实现聊天功能的方法,包括服务器端的实现和客户端的实现。服务器端通过每个用户的输出流向特定用户发送消息,而客户端通过输入流接收消息。同时,还介绍了相关的实体类和Socket的基本概念。 ... [详细]
  • 如何在HTML中获取鼠标的当前位置
    本文介绍了在HTML中获取鼠标当前位置的三种方法,分别是相对于屏幕的位置、相对于窗口的位置以及考虑了页面滚动因素的位置。通过这些方法可以准确获取鼠标的坐标信息。 ... [详细]
  • 本文介绍了使用kotlin实现动画效果的方法,包括上下移动、放大缩小、旋转等功能。通过代码示例演示了如何使用ObjectAnimator和AnimatorSet来实现动画效果,并提供了实现抖动效果的代码。同时还介绍了如何使用translationY和translationX来实现上下和左右移动的效果。最后还提供了一个anim_small.xml文件的代码示例,可以用来实现放大缩小的效果。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 如何基于ggplot2构建相关系数矩阵热图以及一个友情故事
    本文介绍了如何在rstudio中安装ggplot2,并使用ggplot2构建相关系数矩阵热图。同时,通过一个友情故事,讲述了真爱难觅的故事背后的数据量化和皮尔逊相关系数的概念。故事中的小伙伴们在本科时参加各种考试,其中有些沉迷网络游戏,有些热爱体育,通过他们的故事,展示了不同兴趣和特长对学习和成绩的影响。 ... [详细]
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • PDO MySQL
    PDOMySQL如果文章有成千上万篇,该怎样保存?数据保存有多种方式,比如单机文件、单机数据库(SQLite)、网络数据库(MySQL、MariaDB)等等。根据项目来选择,做We ... [详细]
author-avatar
asx
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有