多个应用共存的Django配置方法


Posted in Python onMay 30, 2018

1.配置环境

安装python3
安装python3-pip
通过pip安装Django
**如果需要使用Jinja模板,需要通过pip安装django-jinja与jinja2**

2. 新建Django工程

django-admin startproject rcsiteproject

其目录结构如下图所示:

多个应用共存的Django配置方法

3.新建app

python3 manage.py startapp app1
python3 manage.py startapp app2

多个应用共存的Django配置方法

4.配置app的urls

在每个app中新建urls文件

多个应用共存的Django配置方法

在rcsiteproject中的urls.py文件包含每个app的url。

urlpatterns = [
 url(r'^admin/', include(admin.site.urls)),
 url(r'^app1/', include('app1.urls')),
 url(r'^app2/', include('app2.urls')),
]

5.配置setting.py

INSTALLED_APPS = (
 'django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'app1',
 'app2'
)

6.添加文件中共同引用的commontemplates与commonstatic文件夹

多个应用共存的Django配置方法

在setting中配置static及template

HERE = os.path.dirname(os.path.dirname(__file__))
MEDIA_ROOT = os.path.join( HERE ,'media').replace('\\','/') 
MEDIA_URL = '/media/' 
STATIC_ROOT = os.path.join(HERE,'static').replace('\\','/')
STATIC_URL = '/static/'
STATICFILES_DIRS = (
 # add other path no app static 
 os.path.join(HERE,'commonstatic/').replace('\\','/'),
)

配置templates ‘DIRS'.

TEMPLATES = [
 {
 'BACKEND': 'django.template.backends.django.DjangoTemplates',
 'DIRS': [(os.path.join(BASE_DIR, 'commontemplates')),],
 'APP_DIRS': True,
 'OPTIONS': {
  'context_processors': [
  'django.template.context_processors.debug',
  'django.template.context_processors.request',
  'django.contrib.auth.context_processors.auth',
 'django.contrib.messages.context_processors.messages',
  ],
 },
 },

7.配置template Jinja2解析

INSTALLED_APPS = [
 'django_jinja'
]
TEMPLATES = [
 {
 "BACKEND": "django_jinja.backend.Jinja2",
 'DIRS': [(os.path.join(BASE_DIR, 'commontemplates')),],
 "APP_DIRS": True,
 "OPTIONS": {
  "app_dirname": "templates",
  "match_extension": ".html",
 }
 },
 {
 'BACKEND': 'django.template.backends.django.DjangoTemplates',
 'DIRS': [(os.path.join(BASE_DIR, 'commontemplates')),],
 'APP_DIRS': True,
 'OPTIONS': {
  'context_processors': [
  'django.template.context_processors.debug',
  'django.template.context_processors.request',
  'django.contrib.auth.context_processors.auth',
  'django.contrib.messages.context_processors.messages',
  ],
 },
 },
]

上述文章有什么不之处,欢迎大家指正。

Python 相关文章推荐
使用Python实现一个简单的项目监控
Mar 31 Python
python使用range函数计算一组数和的方法
May 07 Python
Python的Django中django-userena组件的简单使用教程
May 30 Python
Python中collections模块的基本使用教程
Dec 07 Python
Python中super函数用法实例分析
Mar 18 Python
导入tensorflow时报错:cannot import name 'abs'的解决
Oct 10 Python
Python中生成一个指定长度的随机字符串实现示例
Nov 06 Python
Python新手如何进行闭包时绑定变量操作
May 29 Python
深入了解Python装饰器的高级用法
Aug 13 Python
Ubuntu16安装Python3.9的实现步骤
Dec 15 Python
python通配符之glob模块的使用详解
Apr 24 Python
Python Pandas数据分析之iloc和loc的用法详解
Nov 11 Python
python实现支付宝当面付(扫码支付)功能
May 30 #Python
详解Python3.6安装psutil模块和功能简介
May 30 #Python
python3之模块psutil系统性能信息使用
May 30 #Python
python批量导入数据进Elasticsearch的实例
May 30 #Python
用python简单实现mysql数据同步到ElasticSearch的教程
May 30 #Python
django1.11.1 models 数据库同步方法
May 30 #Python
Python使用tkinter库实现文本显示用户输入功能示例
May 30 #Python
You might like
PHP页面间传递参数实例代码
2008/06/05 PHP
如何利用PHP执行.SQL文件
2013/07/05 PHP
PHP 验证登陆类分享
2015/03/13 PHP
js格式化货币数据实现代码
2013/09/04 Javascript
基于NodeJS的前后端分离的思考与实践(三)轻量级的接口配置建模框架
2014/09/26 NodeJs
jquery结合CSS使用validate实现漂亮的验证
2015/01/29 Javascript
jQuery实现跨域iframe接口方法调用
2015/03/14 Javascript
jQuery实现响应鼠标滚动的动感菜单效果
2015/09/21 Javascript
html5+javascript实现简单上传的注意细节
2016/04/18 Javascript
AngularJS基础 ng-class-odd 指令示例
2016/08/01 Javascript
js实现右键自定义菜单
2016/12/03 Javascript
js前端日历控件(悬浮、拖拽、自由变形)
2017/03/02 Javascript
AngularJS实现的根据数量与单价计算总价功能示例
2017/12/26 Javascript
使用jquery DataTable和ajax向页面显示数据列表的方法
2018/08/09 jQuery
微信小程序登录按钮遮罩浮层效果的实现方法
2018/12/16 Javascript
JS立即执行函数功能与用法分析
2019/01/15 Javascript
Vue编写可显示周和月模式的日历 Vue自定义日历内容的显示
2019/06/26 Javascript
初学vue出现空格警告的原因及其解决方案
2019/10/31 Javascript
用vite搭建vue3应用的实现方法
2021/02/22 Vue.js
Python库urllib与urllib2主要区别分析
2014/07/13 Python
python tensorflow学习之识别单张图片的实现的示例
2018/02/09 Python
python使用tensorflow深度学习识别验证码
2018/04/03 Python
python 二维数组90度旋转的方法
2019/01/28 Python
python cv2读取rtsp实时码流按时生成连续视频文件方式
2019/12/25 Python
css3实现画半圆弧线的示例代码
2017/11/06 HTML / CSS
html5之Canvas路径绘图、坐标变换应用实例
2012/12/26 HTML / CSS
JD Sports澳洲官网:英国领先的运动鞋和运动时尚零售商
2020/02/15 全球购物
Agoda中文官网:安可达(低价预订全球酒店)
2021/01/18 全球购物
成教毕业生自我鉴定
2013/10/23 职场文书
法律工作求职自荐信
2013/10/31 职场文书
同学会邀请书大全
2014/01/12 职场文书
作文评语大全
2014/04/23 职场文书
初三学习计划书范文
2014/04/30 职场文书
硕士生找工作求职信
2014/07/05 职场文书
如何计划开一家便利店?
2019/07/31 职场文书
豆瓣2021评分最高动画剧集-豆瓣评分最高的动画剧集2021
2022/03/18 日漫