Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Django小技巧07: 在模板中获取当前URL

Django小技巧07: 在模板中获取当前URL

作者头像
用户1416054
发布于 2018-11-29 09:41:48
发布于 2018-11-29 09:41:48
4.5K00
代码可运行
举报
文章被收录于专栏:JackeyGao的博客JackeyGao的博客
运行总次数:0
代码可运行

翻译整理自: simpleisbetterthancomplex.com

确保项目配置里的context_processors包含django.template.context_processors.request.

Django 1.9 开始, 默认是已经配置的。

Python

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

获取当前位置:

Django/Jinja

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{{ request.path }}

获取带有querystring的URL:

Django/Jinja

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{{ request.get_full_path }}

获取完全的绝对路径:

Django/Jinja

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{{ request.build_absolute_uri }}

示例表

假设, 我们的URL是: https://jackeygao.io/search/?keyword=django

Method

Output

request.path

/search/

request.get_full_path

search/?keyword=django

request.build_absolute_uri

https://jackeygao.io/search/?keyword=django

Django 1.7 或者更早的版本

settings.py

Raw

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.conf.global_settings import TEMPLATE_CONTEXT_PROCESSORS as TCP

TEMPLATE_CONTEXT_PROCESSORS = TCP + (
    'django.core.context_processors.request',
)
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【愚公系列】2022年01月 Django商城项目01-jinja2模板配置
文章目录 一、jinja2模板配置 1.安装jinja2模块 2.修改模板配置 3.全局模板配置 ---- 一、jinja2模板配置 1.安装jinja2模块 pip install jinja2 2.修改模板配置 TEMPLATES = [ { 'BACKEND': 'django.template.backends.jinja2.Jinja2',# 修改模板引擎 'DIRS': [os.path.join(BASE_DIR,'templates')],# 设置模
愚公搬代码
2022/01/04
4190
Django模板(HTML)
Django中的模板相当于传统MVC模式中的V,而在Django的MVT中,模板是T。在传统的前后端不分离的开发形式中,Django的模板是非常有用的,但是在今天前后端分离的大环境下,Django模板基本没有什么用处。
zy010101
2021/10/09
6K0
Django模板(HTML)
django-模板之静态文件加载(十四)
每次都要加{% load static %},挺麻烦的可以再settings.py中配置,就可以不加这句话了。
西西嘛呦
2020/08/26
7000
Django 设置media static
Django 设置media static 本文python版本3.6.1,Django版本1.11.1 1、settings.py配置 增加django.template.context_proce
用户1214487
2018/01/24
8400
Django 设置media static
小白学Python – Django Web 开发教程 三(Django 模板)
模板是 Django MVT 结构的第三个也是最重要的部分。Django 中的模板基本上是在 .html 文件中用 HTML、CSS 和 Javascript 编写的。Django 框架有效地处理和生成最终用户可见的动态 HTML 网页。Django 主要与后端一起运行,因此,为了提供前端并为我们的网站提供布局,我们使用模板。根据我们的需要,有两种方法可以将模板添加到我们的网站。
用户1418987
2023/10/26
6030
小白学Python  – Django Web 开发教程 三(Django 模板)
配置django图片上传与保存展示
近来在研究django,发现有好多好玩的功能,比如图片上传,以前处理这个比较麻烦,现在我们来看看如何来处理图片上传与保存 1.在数据库设计的时候需要配置upload_to image = models.ImageField(upload_to="org/%Y/%m", verbose_name=u"Logo", max_length=100) 2.在settings.py中配置media MEDIA_URL = "/media/" MEDIA_ROOT = os.path.join(BASE_DIR,'me
程序员同行者
2018/07/02
2.1K0
Django踩坑笔记
在使用Django开发的时候踩了很多坑,因为和之前的有些不一样,因为现在的项目才捡起来,作为小组的组长,写点笔记,记录下来,也是给大家做一个参考 转至:V站 1.编码问题 问题: Non-ASCII character '\xe9' in file F:\...\settings.py on line 80, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details 解决办法:只需要在文件头部添加如下的代码
V站CEO-西顾
2018/10/27
4160
django 配置media 存放调用 图片、图标等文件
一、需求分析: 一般在网站开发中,有很多类似于用户头像、用户上传的文件,这些经常要改变的媒体文件,需要有一个地方存放,于是就需要media目录,起到跟static类似的功能。 二、在settings.py中配置: 在TEMPLATES中: TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'temp
玩蛇的胖纸
2018/06/08
8470
django 配置 sitemap.xml
# settings.py 添加 apps:  'django.contrib.sites', 'django.contrib.sitemaps',
卓越笔记
2023/02/18
3810
python django项目创建及前期
1、静态文件目录配置(用于客户端访问后台服务静态文件资源,如bootstrap,jquery,css文件等)
py3study
2020/01/19
5080
python django项目创建及前期
Django 基础必备三件套
【摘要】 Django 基础 HttpResponse/render/redirect 相关知识。
玖柒的小窝
2021/09/16
3230
Django 基础必备三件套
pycharm运行Django项目,提示
确认pycharm编码都是utf-8的情况下,需要修改项目中settings.py
py3study
2020/01/17
5260
Django学习-第五讲:模板中静态文件的加载
一个网站中除了正常的html页面之外,还有相应的样式,以及js等其他的文件,我们把除了html网页外的文件称之为静态资源文件,下面我们介绍一下怎么在django中去加载静态资源文件
小海怪的互联网
2019/10/08
2.5K0
前端(以Vue为例)webpack打包后dist文件包如何部署到django后台中
     由于现在前端使用的三大框架配合webpack可以实现快速打包,为部署到服务端提供了非常大的便利,那么在前端打包后,应该做些什么可以部署到django的后台中呢?
人生不如戏
2018/12/14
3.5K0
django-模板之自定义模板路径(一)
一般情况下我们的模板路径是位于app下的templates,我们可以根据实际情况自己定义模板的路径。
西西嘛呦
2020/08/26
1.6K0
Django基础
前戏 WEB框架简介 具体介绍Django之前,必须先介绍WEB框架等概念。 web框架: 别人已经设定好的一个web网站模板,你学习它的规则,然后“填空”或“修改”成你自己需要的样子。 一般web框
人生不如戏
2018/04/12
7980
Django基础
django显示当前时间
直接用HttpResponse返回一个html标签不太好,如果代码比较多,就不合适了。
py3study
2018/08/02
3.6K0
分离django中的媒体文件,静态文件
django项目中,占很大体积的是静态文件,媒体文件还有html代码,那我们该如何把它们分离出来以方便我们和服务器去管理和使用它们。
py3study
2020/01/05
2K0
模板基本使用
一、概述 模板是HTML页面,可以根据传递的数据进行填充 二、模板存放目录 在应用目录下创建名为templates目录来存放模板 在工程目录下创建名为templates目录来存放模板 三、将templates标记为模板文件夹 四、配置模板目录 目的 让工程知道哪个目录是存放模板的 配置 settings.py文件中的TEMPLATES字段 TEMPLATES = [ { <span class="hljs-string">'BACKEND'</span>: <span c
星哥玩云
2022/09/14
6350
模板基本使用
Django——简单使用Django
改变settings.py文件为上所示,之后再次启动Django项目,可以看到,页面如下所示。
zy010101
2021/01/07
1K0
Django——简单使用Django
相关推荐
【愚公系列】2022年01月 Django商城项目01-jinja2模板配置
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档