Django url.py path name同一app下路由别名定义
作者:刀枪不入de王二花 发布时间:2023-01-24 23:46:36
标签:Django,url.py,路由,别名定义
Django url path
Django 路由在 urls.py 配置
path('浏览器地址栏表示URL', '处理方法', '路由别名')
path('app1/screen001/list', screen001_view.list, name='list')
注意:同一app下 name 定义不能重名,若重名,后者会覆盖前者
不同app下可以重名,调用方法:指定app名称 {% url "app名称:路由别名"%}
※Django version 4.0.3
project :
pj
├── app1
│ │ urls.py
│ │ screen001_views.py
│ │ screen002_views.py
│ └── ...
│
├── app2
│ │ urls.py
│ │ screen003_views.py
│ └── ...
│
├── pj
│ │ settings.py
│ │ urls.py
│ └── ...
│
└── templates
└──app1
│ │ screen001.html
│ │ screen002.html
│ └── ...
└──app2
│ screen003.html
└── ...
url.py 路由别名
pj>url.py
from django.urls import path
from django.conf.urls import include
from .views import example_view
urlpatterns = [
path('', include('core.urls')),
path('app1/', include('app1.urls')),
path('app2/', include('app2.urls')),
]
app1>url.py
from django.urls import path
from .views import screen001_view, screen002_view
# 定义实例命名空间
app_name = 'app1'
urlpatterns = [
# 画面1
path('app1/screen001/list', screen001_view.list, name='list'), # 路由别名 list ⇒ s1_list
path('app1/screen001/search', screen001_view.search, name='search'),
# 画面2
path('app1/screen002/list', screen002_view.list, name='list'), # 路由别名 list ⇒ s2_list
]
路由别名【list】,若同一app下重名,调用后者【screen002_view.list】
但可以给同一个函数,定义不同的路由别名,以提供相同的函数给两个不同的群体
app2>url.py
from django.urls import path
from .views import screen003_view
# 定义实例命名空间
app_name = 'app2'
urlpatterns = [
# 画面3
path('app2/screen003/list', screen003_view.list, name='list'),# 路由别名 list ⇒ 不同app下可以重名
]
调用方法:
被指定的命名空间 URL 使用':'
操作符。
{% url "app名称:路由别名" %}
HTML(template)调用实例
<form action="{% url 'app1:app1_s1_list' %}" method="post">
window.open("{% url 'app1:app1_s1_search' %}?id=" + row['id'], '_blank');
function delete_file(id){
$.ajax({
'url': '{% url "app1:app1_s1_list" %}',
'type': 'POST',
'data': JSON.stringify({id:id}),
'contentType': "application/json",
'dataType': 'json'
}).done(function (response) {
console.log("success");
}).fail(function(jqXHR, textStatus, errorThrown){
console.log("システムエラー["+textStatus+"]"+errorThrown);
});
同一app下 name 定义
不能重名,若重名,后者会覆盖前者
路由别名定义:
重复定义
画面表示:log (后者被调用)
参考官方文档 URL调度器
来源:https://cloud.tencent.com/developer/article/2059525


猜你喜欢
- 什么是运算符重载让自定义的类生成的对象(实例)能够使用运算符进行操作作用:让自定义的实例像内建对象一样进行运算符操作让程序简洁易读对自定义对
- 1.元字符: . 它匹配除了换行字符外的任何字符,在 alternate 模式(re.DOTALL)下它甚至可以匹配换行 ^ 匹配行首。除非
- 一、前言三目运算符,又称条件运算符,是计算机语言(c,c++,java等)的重要组成部分。它是唯一有3个操作数的运算符,有时又称为三元运算符
- eval()在print干事情之前,先看看这个东东。不是没有用,因为说不定某些时候要用到。>>> help(eval)&n
- 1、按位取反bitwise_not()按位取反就是将数值根据每个bit位1变0,0变1,比如0xf0按位取反就变成了0x0f,如果是uint
- 索引 经常要查询的语句,则给它建一个索引 表连接 select T_Oders as o join T_Customers as C on
- 1. ORACLE 的解析器按照从右到左的顺序处理 FROM 子句中的表名,因此 FROM 子句中写在最后的表(基础表 driving ta
- SQL Server 2016带来全新突破性的 in-memory性能和分析功能来实现关键任务处理。全面的安全特性 -Alway
- python常见的错误有1.NameError变量名错误2.IndentationError代码缩进错误3.AttributeError对象
- 一、解析网站1.1 获取音频地址在喜马拉雅网站上,随便点开一个音频,打开“开发者工具”,再点击播放按钮,可以看到出现了多个请求:经过排查,发
- #!/usr/local/python import os import time import string source=['/
- 前言在使用自动化登录网站的时候,经常输入用户名和密码后会遇到验证码。今天介绍一款通用验证码识别 OCR库,对验证码识别彻底说拜拜,它的名字是
- python脚本性能分析首先使用cd进入需要测试的脚本文件对应的目录,然后再使用如下代码完成对脚本的性能测试。# enter the dir
- from win32com.client import DispatchEximport timeie=DispatchEx("I
- 不得不承认,傲游在用户体验方面是做得比较好的,所以它的用户群非常大。也正因为如此,它的某些不好的特性也造成了开发人员不可忽略的浏览器兼容问题
- 这段时间我一直在说设计需要有层次感,这种层次感可能有很多类型,比如色彩的层次感,或是元素的层次感。当一个设计缺乏层次感的时候页面所表现出来的
- 最近在学习Python3网络爬虫开发实践(崔庆才 著)刚好也学习到他使用代理爬取公众号文章这里,但是照着他的代码写,出现了一些问题。在这里我
- 什么是变量在Python编程语言中,变量是用于存储数据值的标识符。它们可以用来引用数据值,而不是直接使用值本身。可以使用等号(=)运算符来将
- LDA(Latent Dirichlet allocation)模型是一种常用而用途广泛地概率主题模型。其实现一般通过Variational
- 前言这篇博客针对《Python OpenCV识别行人入口进出人数统计》编写代码,功能包括了入口行人识别,人数统计。代码整洁,规则,易读。应用