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

yipeiwu_com6年前Python基础

本文主要介绍的是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,否则会出现以下错误:

 

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

 

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

 

5、最终效果:

 

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用python能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

Python实现的登录验证系统完整案例【基于搭建的MVC框架】

Python实现的登录验证系统完整案例【基于搭建的MVC框架】

本文实例讲述了Python实现的登录验证系统。分享给大家供大家参考,具体如下: 小型登录注册验证系统 一、概述 ​ 使用Redis+MySQL数据库实现一个小型的登录注册验证...

Python设计模式之组合模式原理与用法实例分析

Python设计模式之组合模式原理与用法实例分析

本文实例讲述了Python设计模式之组合模式原理与用法。分享给大家供大家参考,具体如下: 组合模式(Composite Pattern):将对象组合成成树形结构以表示“部分-整体”的层次...

使用TensorFlow实现SVM

使用TensorFlow实现SVM

较基础的SVM,后续会加上多分类以及高斯核,供大家参考。 Talk is cheap, show me the code import tensorflow as tf from s...

详解用python实现简单的遗传算法

详解用python实现简单的遗传算法

今天整理之前写的代码,发现在做数模期间写的用python实现的遗传算法,感觉还是挺有意思的,就拿出来分享一下。 首先遗传算法是一种优化算法,通过模拟基因的优胜劣汰,进行计算(具体的算法...

在Python中利用pickle保存变量的实例

在Python中利用pickle保存变量的实例

在工作中出于某些原因,我们可能需要将变量保存下来,这样下次就可以直接去赋值而不用重新执行某些重复耗时的操作了,这里我们用到了Python的pickle包来做变量的存储和变量加载,大家注意...