django开发之settings.py中变量的全局引用详解


Posted in Python onMarch 29, 2017

本文主要介绍的是django中settings.py中变量的全局引用的相关资料,下面话不多说,来看看详细的介绍吧。

前言

在settings.py中添加自定义变量,可以通过setting.(点)变量名的方式访问,如:

from django.conf import settings
site_name = settings.SITE_NAME
site_desc = settings.SITE_DESC

但是,如果遇到了一些频繁访问的变量,如:邮箱,网站标题,网站的描述,这样访问就很不方便。

解决方法如下:

1、首先在settings.py中添加对应的变量:

#网站信息
SITE_NAME="hupeng的个人博客"
SITE_DESC="pyhon爱好者,希望和大家一起学习,共同进步"

2、在view中定义函数,返回包含settings配置文件中的变量

from django.conf import settings
def global_settings(request):
 return {"SITE_NAME": settings.SITE_NAME,
   "SITE_DESC": settings.SITE_DESC}

注意:函数中需要添加参数request,否则会出现以下错误:

django开发之settings.py中变量的全局引用详解 

3、在setting.py中的TEMPLATES中的OPTIONS配置项中添加global_settings函数

django开发之settings.py中变量的全局引用详解 

4、修改模板,通过键名的方式直接访问对应的变量

django开发之settings.py中变量的全局引用详解 

5、最终效果:

django开发之settings.py中变量的全局引用详解 

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用python能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
python冒泡排序算法的实现代码
Nov 21 Python
在Django的form中使用CSS进行设计的方法
Jul 18 Python
深入理解python对json的操作总结
Jan 05 Python
python正则实现计算器功能
Dec 14 Python
Django contenttypes 框架详解(小结)
Aug 13 Python
基于python实现自动化办公学习笔记(CSV、word、Excel、PPT)
Aug 06 Python
详解Python中的正斜杠与反斜杠
Aug 09 Python
基于python实现模拟数据结构模型
Jun 12 Python
python实现数字炸弹游戏程序
Jul 17 Python
python中yield的用法详解
Jan 13 Python
python 中 .py文件 转 .pyd文件的操作
Mar 04 Python
Python Matplotlib绘制动画的代码详解
May 30 Python
深入理解Python3中的http.client模块
Mar 29 #Python
Python 中迭代器与生成器实例详解
Mar 29 #Python
Python利用Beautiful Soup模块搜索内容详解
Mar 29 #Python
windows系统下Python环境搭建教程
Mar 28 #Python
Python中Django 后台自定义表单控件
Mar 28 #Python
windows上安装Anaconda和python的教程详解
Mar 28 #Python
利用python爬取软考试题之ip自动代理
Mar 28 #Python
You might like
PHP伪造referer实例代码
2008/09/20 PHP
PHP利用header跳转失效的解决方法
2014/10/24 PHP
php实现的简单数据库操作Model类
2016/11/16 PHP
PHP实现的超长文本分页显示功能示例
2018/06/04 PHP
用PHP做了一个领取优惠券活动的示例代码
2019/07/05 PHP
jquery调用asp.net 页面后台的实现代码
2011/04/27 Javascript
jquery.messager.js插件导致页面抖动的解决方法
2013/07/14 Javascript
网站内容禁止复制和粘贴、另存为的js代码
2014/02/26 Javascript
Bootstrap每天必学之折叠
2016/04/12 Javascript
利用ES6的Promise.all实现至少请求多长时间的实例
2017/08/28 Javascript
JavaScript插件Tab选项卡效果
2017/11/14 Javascript
详解webpack-dev-server使用http-proxy解决跨域问题
2018/01/13 Javascript
JS设计模式之访问者模式定义与用法分析
2018/02/05 Javascript
vue-cli3全面配置详解
2018/11/14 Javascript
vue+iview动态渲染表格详解
2019/03/19 Javascript
JavaScript实现图片放大镜效果
2019/06/27 Javascript
vue element-ui el-date-picker限制选择时间为当天之前的代码
2019/11/07 Javascript
Js逆向实现滑动验证码图片还原的示例代码
2020/03/10 Javascript
[37:02]OG vs INfamous 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
[39:53]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第一场 11.19
2020/11/19 DOTA
[50:54]完美世界DOTA2联赛 GXR vs IO 第三场 11.07
2020/11/10 DOTA
Python的Flask框架中SQLAlchemy使用时的乱码问题解决
2015/11/07 Python
Python零基础入门学习之输入与输出
2019/04/03 Python
Python 旋转打印各种矩形的方法
2019/07/09 Python
Python内建序列通用操作6种实现方法
2020/03/26 Python
Python如何安装第三方模块
2020/05/28 Python
python解释器安装教程的方法步骤
2020/07/02 Python
使用Html5多媒体实现微信语音功能
2019/07/26 HTML / CSS
俄罗斯三星品牌商店:GalaxyStore
2020/11/04 全球购物
市场营销毕业生自荐信
2013/11/23 职场文书
小学毕业典礼主持词
2014/03/27 职场文书
2015年计生工作总结范文
2015/04/24 职场文书
2015年度信用社工作总结
2015/05/04 职场文书
总结会主持词
2015/07/02 职场文书
公司要求试用期员工提交“述职报告”,该怎么写?
2019/07/17 职场文书
golang 如何用反射reflect操作结构体
2021/04/28 Golang