import os
BASE_DIR = os.path.dirname(os.path.dirname(__file__))

这里用到了python中一个神奇的变量 file 这个变量可以获取到当前文件(包含这个代码的文件)的路径。os.path.dirname(file) 得到文件所在目录,再来一个os.path.dirname()就是目录的上一级,BASE_DIR 即为 项目 所在目录。我们在后面的与目录有关的变量都用它,这样使得移植性更强。

DEBUG = True

DEBUG=True 时,如果出现 bug 便于我们看见问题所在,但是部署时最好不要让用户看见bug的详情,可能一些不怀好心的人攻击网站,造成不必要的麻烦。

ALLOWED_HOSTS = ['*.besttome.com','www.ziqiangxuetang.com']

ALLOWED_HOSTS 允许你设置哪些域名可以访问,即使在 Apache 或 Nginx 等中绑定了,这里不允许的话,也是不能访问的。

当 DEBUG=False 时,这个为必填项,如果不想输入,可以用 ALLOW_HOSTS = [‘*’] 来允许所有的。

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR,'static')

一般来说我们只要把静态文件放在 APP 中的 static 目录下,部署时用 python manage.py collectstatic 就可以把静态文件收集到(复制到) STATIC_ROOT 目录,但是有时我们有一些共用的静态文件,这时候可以设置 STATICFILES_DIRS 另外弄一个文件夹,如下:

STATICFILES_DIRS = (
os.path.join(BASE_DIR, "common_static"),
'/var/www/static/',
)

这样我们就可以把静态文件放在 common_static 和 /var/www/static/中了,Django也能找到它们

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR,'media')

media文件夹用来存放用户上传的文件,与权限有关

有时候有一些模板不是属于app的,比如 baidutongji.html, share.html等,

TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [
os.path.join(BASE_DIR,'templates').replace('\\', '/'),
os.path.join(BASE_DIR,'templates2').replace('\\', '/'),
],
'APP_DIRS': True,
]

这样 就可以把模板文件放在 templates 和 templates2 文件夹中了。

最新文章

  1. Python的with用法理解
  2. 关于imagic拼接透明背景图片的问题
  3. 一个用php实现的获取URL信息的类
  4. 一个令人蛋疼的 Microsoft.AspNet.FriendlyUrls
  5. 存量数据处理结果查询.txt
  6. DHTMLX 前端框架 建立你的一个应用程序教程(三)--添加一个菜单
  7. android应用Dialog跳转到Activity
  8. 解密:LL与LR解析 1(译)
  9. 【USACO Feb 2014】Cow Decathlon
  10. setuptools安装和错误解决
  11. [七]基础数据类型之Float详解
  12. Lambda为什么又称为匿名函数
  13. m_Orchestrate learning system---三十、项目中的dist文件一般是做什么的
  14. python之 利用字典与函数实现switch case功能
  15. phalApi数据库操作
  16. Spark和YARN
  17. asp.net——Base64加密解密
  18. nginx gzip压缩配置
  19. 安装Oracle 10g RAC是否需要安装HACMP
  20. Codeforces Round #478 (Div. 2)

热门文章

  1. Java的运行机制
  2. 【LeetCode】716. Max Stack 解题报告(C++)
  3. 【九度OJ】题目1153:括号匹配问题 解题报告
  4. 【LeetCode】962. Maximum Width Ramp 解题报告(Python)
  5. 【LeetCode】234. Palindrome Linked List 解题报告(Python)
  6. C++中常用的数学函数总结
  7. [C++]高效C/C ++编程tips
  8. sping练习,在Eclipse搭建的Spring开发环境中,使用工厂方式创建Bean对象,将创建的Bean对象输出到控制台。
  9. 编写Java程序,几个朋友到游乐场游玩,大家投票选择出行方式。使用程序来模拟这一结果。(工厂模式示例Demo)
  10. 疯狂的类构造器Builder模式,链式调用