项目中一些比较零散的信息可以保存在数据库,也可以保存在settings.py里面

 
并且这些变量也可以像引用数据里面的数据使用,
 
 
可以把信息保存在settings.py里面,也可以保存在数据表当中

设置在settings里面等于是相当于设置全局变量
在views.py当中引用
先import django.conf import settings
通过这种方式引用:site_name = settings.SITE_NAME
不过这种方式引用太麻烦
可以直接定义一个函数,将settings内容读取出来,进行输出
def global_setting():
return{'SITE_NAME':settings.SITE_NAME,
'SITE_DESC':settings.SITE_DESC,
}
把这个方法加到settings.py里面的TEMPLATES的OPTIONS的上下文处理器这个配置
在这个处理器执行的时候,每个页面都可以用到,
'blog.views.global_setting',
于是我可以直接在模板当中调用global里面的变量,字典的名字
如html当中
SITE_NAME
 
 
把index和archive里面相同的代码提取出来放到global_settings里面
 
def global_setting(request):
#分类信息获取(导航数据)
category_list = Category.objects.all()
#文章归档数据
archive_list = Article.objects.distinct_date()
return {
'category_list':category_list,
'archive_list':archive_list,
'SITE_NAME':settings.SITE_NAME,
'SITE_DESC':settings.SITE_DESC,
}
还有一些数据也可以放到global_settings里面
如:广告数据,标签云数据,友情链接数据,文章排行榜数据
 
 
 
 
 
 
 
 
 
 
 

调用settings.py的配置信息作为全局使用的更多相关文章

  1. settings.py相关配置

    INSTALLED_APPS   #配置项目绑定的应用 TEMPLATES   #配置项目使用的模板引擎 DATABASES   #设定绑定的数据库 TIME_ZONE   #设定时区,时区的设定可能 ...

  2. 0007 settings.py配置文件详解

    01 DEBUG调试配置 开发期设置为True,发布时设置为False 02 INSTALLED_APPS已安装的APP配置 INSTALLED_APPS = [ 'django.contrib.ad ...

  3. Django(5)django配置信息

    前言 Django的配置文件settings.py用于配置整个网站的环境和功能,核心配置必须有项目路径.密钥配置.域名访问权限.App列表.中间件.资源文件.模板配置.数据库的连接方式 基本配置信息 ...

  4. ASP.NET CORE配置信息

    做个笔记,原文链接 除了应用 IOptions<T> .Value的方式对配置信息进行全局注册外可以应用的另一个微软给出的组件,需要依赖两个包 Microsoft.Extensions.C ...

  5. 分布式爬虫scrapy-redis中settings.py中的配置信息

    SCHEDULER = "scrapy_redis.scheduler.Scheduler" # 使用scrapy-redis的调度器 ITEM_PIPELINES = { 'sc ...

  6. 【5】Django项目配置settings.py详解

    夫唯不争,故天下莫能与之争 --老子<道德经> 本节内容 1.项目配置文件settings.py介绍 2.数据库配置[MySQL] 3.创建模型对象并和数据库同步 4.python官方提供 ...

  7. 0004 工程配置settings.py

    两个目录的区别: 工程目录是指包含manage.py文件的目录 配置目录是批包含settings.py文件的目录 在配置目录中找到并打工settings.py文件,做以下配置: 01 DEBUG DE ...

  8. settings.py 配置汇总

    数据库配置: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 数据库引擎 'NAME': ' ', #数据库名称 ...

  9. Visual studio之C# 利用Settings保存COM口配置信息

    背景 利用C#做一个串口通信项目,客户需求保存串口COM口的配置信息,在此利用Settings来进行保存. 正文 ".Settings"的创建 点击项目 --> 添加新项 - ...

随机推荐

  1. Android JNI和NDK学习(02)--静态方式实现JNI(转)

    本文转自:http://www.cnblogs.com/skywang12345/archive/2013/05/23/3095013.html JNI包括两种实现方法:静态和动态.两种方法的区别如下 ...

  2. centos6安装docker

    rpm -ivh http://dl.Fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm rpm --import /etc ...

  3. javascript消息框

    JavaScript有三种消息框: 警告框:alert() alert("我是警告框!!") 确认框:confirm() function show_confirm() { var ...

  4. formail 发送HTML 邮件通过 SENDMAIL

    cat a.html | formail -I "Content-type:text/html;charset=utf-8" -I "Subject:layer4 con ...

  5. FreeBSD中实现root的ssh

    在虚拟机中刚装好FreeBSD,结果不能以远程方式登录root,然后在如下链接中找到了解决方法: http://blog.chinaunix.net/uid-26719405-id-3822697.h ...

  6. Yarn源码分析之MRAppMaster上MapReduce作业处理总流程(一)

    我们知道,如果想要在Yarn上运行MapReduce作业,仅需实现一个ApplicationMaster组件即可,而MRAppMaster正是MapReduce在Yarn上ApplicationMas ...

  7. java 获取网页指定内容-2(实践+修改)

    import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.HttpURLConnection; ...

  8. Xcode中授权普通成员

    问题: 在普通用户账户下使用系统的Xcode在编译通过时候会提示” Developer Tools Access“需控制另一进程,需要输入“Developer Tools”组用户名密码才能继续调试 解 ...

  9. LeetCode 递归(Recursion) 培训专题 讲解文章翻译 (附链接)

     递归 - 时间复杂度 在本文中, 我们主要介绍如何分析递归算法程序中的时间复杂度.. 在一个递归程序中, 它的时间复杂度 O(T) 一般来说就是他总共递归调用的次数 (定义为 R) 以及每次调用时所 ...

  10. Starting Tomcat v7.0 Server at localhost' has encountered a problem. 如何解决

    刚刚学习JavaWeb,遇到了一个问题 因为是初学,我在工程中编写了一个JSP,想要在浏览器中打开,然后出现了这个问题: 在途中大家可以看到,我点击运行写好的JSP,却出现错误,真正的原因是因为Jav ...