django配置templates、static、media和连接mysql数据库
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数据库的更多相关文章
- 在Django中连接MySQL数据库(Python3)
我的环境: python3.6, Django2.1.5, MySQL8.0.15, win10, PyCharm, 要求:已经安装了MySQL数据库 ...
- Django连接MySQL数据库配置
1.自己手动创建数据库 create database 数据库名; # 如: create database bms character set utf8; # 授权访问: grant all pri ...
- django连接mysql数据库以及建表操作
django连接mysql数据库需要在project同名的目录下面的__init__.py里面加入下面的东西 import pymysql pymysql.install_as_MySQLdb() 找 ...
- django新建项目,连接mysql数据库
安装django,进入Django目录,运行 python setup.py install 在workplace目录下新建一个名为site01的项目: cd workplacedjango-admi ...
- Myeclipes连接Mysql数据库配置
相信大家在网站上也找到了许多关于myeclipes如何连接mysql数据库的解决方案,虽然每一步都按照他的步骤来,可到最后还是提示连接失败,有的方案可能应个人设备而异,配置环境不同导致.经过个人多方探 ...
- Django 连接 MySQL 数据库及常见报错解决
目录 Django 连接 MySQL数据库及常见报错解决 终端或者数据库管理工具连接 MySQL ,并新建项目所需数据库 安装访问 MySQL 的 Python 模块 Django 相关配置 可能会遇 ...
- [技术博客]django连接mysql数据库的方法及部分问题的解决方法
配置机器介绍 操作系统:Ubuntu 18.04.2 LTS 64位 python版本:Python 3.6.7 Django版本:Django 2.2 MySql版本:5.7.26 数据库选择 我们 ...
- Django学习:连接Mysql数据库
开发环境: Windows 10 Python 3.7.4 Django 2.2.6 Mysql 8.0.17 承接上一节:https://www.cnblogs.com/daydayupup/p/1 ...
- hibernate简单连接mysql数据库配置
使用hibernate连接mysql数据库 1:项目搭建好之后,在lib包中添加必要的jar包,和mysql数据库驱动jar包: jar包可以在hibernate的下载包(hibernate3.3.2 ...
随机推荐
- 【BZOJ做题记录】07.07~?
在NOI一周前重开一个坑 最后更新时间:7.08 07:38 7.06 下午做的几道CQOI题: BZOJ1257: [CQOI2007]余数之和sum:把k mod i写成k-k/i*i然后分段求后 ...
- 24、CSS定位
CSS定位方法 driver.find_element_by_css_selector() 1.CSS定位常用策略(方式) 1.id选择器 说明:根据元素id属性来选择 格式:#id 如:#userA ...
- MSSQL 详解SQL Server连接(内连接、外连接、交叉连接)
在查询多个表时,我们经常会用“连接查询”.连接是关系数据库模型的主要特点,也是它区别于其它类型数据库管理系统的一个标志. 什么是连接查询呢? 概念:根据两个表或多个表的列之间的关系,从这些表中查询数据 ...
- hdfs的datanode工作原理
datanode的作用: (1)提供真实文件数据的存储服务. (2)文件块(block):最基本的存储单位.对于文件内容而言,一个文件的长度大小是size,那么从文件的0偏移开始,按照固定的大小,顺序 ...
- python算法之近似熵、互近似熵算法
理论基础 近似熵? 定义:近似熵是一个随机复杂度,反应序列相邻的m个点所连成折线段的模式的互相近似的概率与由m+1个点所连成的折线段的模式相互近似的概率之差. 作用:用来描述复杂系统的不规则性,越是不 ...
- makefile使用.lds链接脚本以及 $@ ,$^, $,< 解析【转】
转自:http://www.cnblogs.com/lifexy/p/7089873.html 先来分析一个简单的.lds链接脚本 例1,假如现在有head.c init.c nand.c main. ...
- 144.Binary Tree Preorder Traversal---二叉树先序、中序非递归遍历
题目链接 题目大意:返回二叉树的先序遍历list.中序见94,后序见145. 法一:普通递归遍历,只是这里多了一个list数组,所以分成了两个函数.代码如下(耗时1ms): public List&l ...
- TreeSet基本用法
TreeSet的基础方法: public class TreeSetTest { public static void main(String[] args) { TreeSet nums = new ...
- (MHA+MYSQL-5.7增强半同步)高可用架构设计与实现
架构使用mysql5.7版本基于GTD增强半同步并行复制配置 reploication 一主两从,使用MHA套件管理整个复制架构,实现故障自动切换高可用 优势: ...
- gtk+学习笔记(二)
如何创建一个按钮呢,直接贴代码把,有详细的注释. #include<gtk/gtk.h> gint data_count=; void on_button_clicked (GtkWidg ...