1.模板文件

# =======templates配置=======
if os.path.exists(os.path.join(BASE_DIR, 'templates')) is False:
os.mkdir(os.path.join(BASE_DIR, 'templates'))
TEMPLATES = [
{
# 模板引擎,内置的模板引擎有:
# 1. 'django.template.backends.django.DjangoTemplates'
# 2. 'django.template.backends.JInJa2.JInja2'
# 你也可以使用非Django的模板引擎
'BACKEND': 'django.template.backends.django.DjangoTemplates', # 引擎用于查找模板源文件的目录,按搜索顺序排列
'DIRS': [os.path.join(BASE_DIR, 'templates'), os.path.join(BASE_DIR, "mobile_app/dist"),
os.path.join(BASE_DIR, "big_screen/screenpro/dist"), ], # 引擎是否在已经安装的应用程序的目录内查看模板源文件
'APP_DIRS': True, # 传递给模板引擎(backend)的其他参数,不同引擎,可用的参数不一样
'OPTIONS': {
'context_processors': [
# 全局的processors,它默认是被传递给views中html模板的RequestContext对象
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
# u"在模板变量中添加 {{ MEDIA_URL }}"
"django.template.context_processors.media",
# u"在模板变量中添加 {{ STATIC_URL }}"
"django.template.context_processors.static",
# 添加 移动标识 device(自定义)
"prod_core.template.context_processors.mobile",
],
},
},
]

2.静态文件

# ======static配置======
if os.path.exists(os.path.join(BASE_DIR, 'static')) is False:
os.mkdir(os.path.join(BASE_DIR, 'static')) # 由templates配置中"django.template.context_processors.static"读取
# 可以在html模板上使用{{ STATIC_URL }}读取STATIC_URL
STATIC_URL = '/static/' # python manage.py collectstatic 命令收集静态文件的目录,将各个app目录下的static收集于项目目录下的static中
STATIC_ROOT = 'static' # 放各个app的static目录及公共的static目录
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "mobile_app/dist/static/"),
os.path.join(BASE_DIR, "big_screen/screenpro/dist/static/")
] STATICFILES_FINDERS = (
# 用来从 STATICFILES_DIRS 指定的路径中查找额外的静态文件
'django.contrib.staticfiles.finders.FileSystemFinder',
# 从 INSTALLED_APPS 列表内的 APP 所在包的 static 目录中查找资源文件
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
# other finders.. css,js等文件压缩
'compressor.finders.CompressorFinder',
)
# 项目一级路由urls.py配置,方便通过url访问,实测不添加也可以访问
from django.views.static import serve
url(r'^static/(?P<path>.*)$', serve, {'document_root': settings.STATIC_ROOT}),

3.媒体文件

# ======media配置======
if os.path.exists(os.path.join(BASE_DIR, 'media')) is False:
os.mkdir(os.path.join(BASE_DIR, 'media'))
# media目录,相当于设置媒体文件的绝对路径
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
# 由templates配置的django.template.context_processors.media读取
# 在html模板上使用{{ MEDIA_URL }}读取媒体根目录
MEDIA_URL = '/media/'
# 项目一级路由urls.py配置,方便通过url访问
from django.views.static import serve
url(r'^media/(?P<path>.*)/$', serve, {"document_root": settings.MEDIA_ROOT}),

 4.数据库配置

# =======数据库配置======
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 数据库引擎
'HOST': 'localhost', # 主机
'USER': 'root', # 用户
'PASSWORD': 'root', # 密码
'PORT': '3306', # 端口号
'NAME': 'mysite', # 数据库名
}
}

ps:

  使用django-compressor压缩静态文件:https://www.cnblogs.com/skying555/p/5972735.html

django配置templates、static、media和连接mysql数据库的更多相关文章

  1. 在Django中连接MySQL数据库(Python3)

    我的环境:      python3.6,      Django2.1.5,      MySQL8.0.15,      win10,      PyCharm, 要求:已经安装了MySQL数据库 ...

  2. Django连接MySQL数据库配置

    1.自己手动创建数据库 create database 数据库名; # 如: create database bms character set utf8; # 授权访问: grant all pri ...

  3. django连接mysql数据库以及建表操作

    django连接mysql数据库需要在project同名的目录下面的__init__.py里面加入下面的东西 import pymysql pymysql.install_as_MySQLdb() 找 ...

  4. django新建项目,连接mysql数据库

    安装django,进入Django目录,运行 python setup.py install 在workplace目录下新建一个名为site01的项目: cd workplacedjango-admi ...

  5. Myeclipes连接Mysql数据库配置

    相信大家在网站上也找到了许多关于myeclipes如何连接mysql数据库的解决方案,虽然每一步都按照他的步骤来,可到最后还是提示连接失败,有的方案可能应个人设备而异,配置环境不同导致.经过个人多方探 ...

  6. Django 连接 MySQL 数据库及常见报错解决

    目录 Django 连接 MySQL数据库及常见报错解决 终端或者数据库管理工具连接 MySQL ,并新建项目所需数据库 安装访问 MySQL 的 Python 模块 Django 相关配置 可能会遇 ...

  7. [技术博客]django连接mysql数据库的方法及部分问题的解决方法

    配置机器介绍 操作系统:Ubuntu 18.04.2 LTS 64位 python版本:Python 3.6.7 Django版本:Django 2.2 MySql版本:5.7.26 数据库选择 我们 ...

  8. Django学习:连接Mysql数据库

    开发环境: Windows 10 Python 3.7.4 Django 2.2.6 Mysql 8.0.17 承接上一节:https://www.cnblogs.com/daydayupup/p/1 ...

  9. hibernate简单连接mysql数据库配置

    使用hibernate连接mysql数据库 1:项目搭建好之后,在lib包中添加必要的jar包,和mysql数据库驱动jar包: jar包可以在hibernate的下载包(hibernate3.3.2 ...

随机推荐

  1. GridControl详解(一)原汁原味的表格展示

    Dev控件中的表格控件GridControl控件非常强大.不过,一些细枝末节的地方有时候用起来不好找挺讨厌的.使用过程中,多半借助Demo和英文帮助文档.网上具体的使用方法也多半零碎.偶遇一个简单而且 ...

  2. MQTT协议及推送服务(二)

    MQTT简介 MQTT全称叫做Message Queuing Telemetry Transport,意为消息队列遥测传输,是IBM开发的一个即时通讯协议.由于其维护一个长连接以轻量级低消耗著称,所以 ...

  3. 【译】DTD - Entities

    原文:DTD - Entities 实体用于定义XML文档中特殊字符的快捷方式. 实体主要有四种类型: 内置实体(Built-in entities) 字符实体(Character entities) ...

  4. 21、利用selenium进行Web测试

    一.案例实施步骤思路分析 1.寻包 2.指定浏览器(实例化浏览器对象) 3.打开项目 4.找到元素(定位元素) 5.操作元素 6.暂停 7.关闭二.元素定位[重点] 1.id 说明:通过元素的id属性 ...

  5. Django(基础篇)

    1.请求周期 url> 路由 > 函数或类 > 返回字符串或者模板语言? Form表单提交:        提交 -> url > 函数或类中的方法           ...

  6. js base64加密解密

    var base64EncodeChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" ...

  7. laravel学习教程整理

    百度传课:https://chuanke.baidu.com/v5847462-219167-1421398.html

  8. angular导出文件保存在本地

    $scope.ev_click = function(obj){ var ev = document.createEvent("MouseEvents"); ev.initMous ...

  9. appium===浮窗无法定位的解决办法

    这个问题比较常见,而且不被重视.大多数人的解决思路是根据坐标,把它点掉. 如下图,根本无法定位出“你好”这个元素: 最后的解决办法是: 在desired_caps={}中增加, desired_cap ...

  10. java关键字(详解)

    目录 1. 基本类型 1) boolean 布尔型 2) byte 字节型 3) char 字符型 4) double 双精度 5) float 浮点 6) int 整型 7) long 长整型 8) ...