项目的架构为:

1、虚拟环境virtualenv

  • 安装Django==2.1.3
  • 安装pymysql
  • 安装mysqlclient
  • 安装其他等

2、项目结构为:

应用APP:

  • blog -- 管理博客
  • account -- 管理用户注册/登录/等

    后台数据库:
  • mysql

    路由分层及命名空间:
  • 根据应用进行分层
from django.urls import path,include
# 使用include方法
urlpatterns = [
path('admin/', admin.site.urls),
path('blog/',include("blog.urls")),
path('account/',include("account.urls")),
]
  • 应用新增urls.py中,需写命名空间:app_name=xxxx

3、项目配置:

  • APP应用配置
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'blog', #配置创建好的blog,APP应用名
'account', #配置创建好的account,APP应用名
]
  • MySQL配置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'OPTIONS': {
'read_default_file': os.path.join(BASE_DIR,"db.cnf"),
},
}
}
### db.cnf
[client]
host = 127.0.0.1
port = 3306
database = 't_test_blog'
user = 'root'
password = '123456'
default-character-set = utf8mb4
  • 静态资源配置
步骤1:根目录下新建templates目录
步骤2:setting新增如下代码:
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(BASE_DIR,"static"), #一定要加一个逗号,
)
步骤3:修改TEMPLATES模板配置
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR,"templates"),], #改成templates
'APP_DIRS': False, #改成False
'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',
],
},
},
]
  • 邮件发送配置
EMAIL_HOST = 'smtp.163.com'
EMAIL_HOST_USER = "yang_song_lin@163.com"
EMAIL_HOST_PASSWORD = "YANGSongLin1993"
EMAIL_PORT = 25
EMAIL_USE_TLS = True
DEFAULT_FROM_EMAIL = "yang_song_lin@163.com"
  • 其他配置
中文及时区
LANGUAGE_CODE = 'zh-hans' TIME_ZONE = 'Asia/Shanghai' 后台调试用
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend' 部署用
DEBUG = True ALLOWED_HOSTS = [] #表示不同访问地址

4、项目目录结构

项目工程名
├─account account应用 处理用户相关
│ ├─migrations
│ └─admin.py
│ └─ apps.py
│ └─ forms.py
│ └─ models.py
│ └─tests.py
│ └─urls.py
│ └─urls.py
│ └─views.py
├─blog blog应用 处理博客显示
│ ├─migrations
│ └─admin.py
│ └─apps.py
│ └─models.py
│ └─tests.py
│ └─urls.py
│ └─views.py
├─mysite 项目容器
│ └─settings.py 基础配置项
│ └─urls.py 基础路由
│ └─wsgi.py 部署相关
├─static 静态文件夹
│ ├─css CSS资源文件夹
│ ├─image 图片资源文件夹
│ ├─fonts 字体资源文件夹
│ └─js js资源文件夹
└─templates 总模板
│ ├─account account应用模板
│ ├─admin admin应用模板
│ ├─blogs blogs应用模板
│ ├─registration
│ ├─base.html 基础模板,用于继承重写
│ ├─header.html 头部模板,用于重写
│ └─footer.html 页脚模板,用于重写

├─manage.py 运行文件
└─db.cnf 数据库配置文件

(一)Django项目架构介绍的更多相关文章

  1. Django项目结构介绍

    官网下载网址:https://www.djangoproject.com/download/ 安装(安装最新LTS版): pip3 install django==2.0.7 创建一个django项目 ...

  2. Django项目目录介绍

    一个小问题: 什么是根目录:就是没有路径,只有域名..url(r'^$') 补充一张关于wsgiref模块的图片 一.MTV模型 Django的MTV分别代表: Model(模型):和数据库相关的,负 ...

  3. Linux 首先基本包安装(vim啊什么的),源,源优化,项目架构介绍, (LNMuWsgi)Django项目相关软件mysql,redies,python(相关模块)安装配置测试

    内容 补充: 查看已启动服务的端口 netstat -tulnp |grep (方式1) ss -tulnp|grep (方式2) 前期铺垫: . Linux要能上网 . 掌握Linux软件包安装方法 ...

  4. 网站开发学习Python实现-Django项目部署-介绍(6.2.1)

    @ 目录 1.第一步:找源码 2.第二步:在windows中更改代码 2.第三步:同步到linux中 3.第三步:部署 4.第四步:运行 关于作者 1.第一步:找源码 从github上找一个djang ...

  5. Django-下载安装-配置-创建django项目-三板斧简单使用

    目录 Django 简介 使用 django 的注意事项 计算机名不能有中文 Django版本问题 django下载安装 在命令行下载安装 在pycharm图形界面下载安装 检验是否安装成功 创建Dj ...

  6. Django项目的创建与介绍.应用的创建与介绍.启动项目.pycharm创建启动项目.生命周期.三件套.静态文件.请求及数据.配置Mysql完成数据迁移.单表ORM记录的增删改查

    一.Django项目的创建与介绍 ''' 安装Django #在cmd中输入pip3 #出现这个错误Fatal error in launcher: Unable to create process ...

  7. 第三百零三节,Django框架介绍——用pycharm创建Django项目

    Django框架介绍 Django是一个开放源代码的Web应用框架,由Python写成.采用了MVC的软件设计模式,即模型M,视图V和控制器C.它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内 ...

  8. 一 Django框架介绍——用pycharm创建Django项目

    Django框架介绍 Django是一个开放源代码的Web应用框架,由Python写成.采用了MVC的软件设计模式,即模型M,视图V和控制器C.它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内 ...

  9. Django (九) 项目开发流程&项目架构

    项目开发流程&项目架构 1. 软件开发的一般流程 1. 需求分析及确认: 由需求分析工程师与客户确认甚至挖掘需求.输出需求说明文档. ​ 2. 概要设计及详细设计: 开发对需求进行概要设计,包 ...

随机推荐

  1. maven中如果使用本地jar

    1.安装到本地仓库class12.jar这个东西在中央仓库里没有,所以,cmd到oracle\product\10.2.0\db_1\jdbc\lib路径下,mvn install 就好了(发布第三方 ...

  2. 【CSS3 + 原生JS】上升的方块动态背景

    GIF图有点大,网速慢的或将稍等片刻或可浏览本人的制作的demo. Demo : 点击查看 HTML: <!DOCTYPE html> <html lang="en&quo ...

  3. [转]cron表达式的用法

    cron表达式通过特定的规则指定时间,用于定时任务,本文简单记录它的部分语法和实例,并不完全,能覆盖日常大部分需求. 1. 整体结构 cron表达式是一个字符串,分为6或7个域,每两个域之间用空格分隔 ...

  4. Flex AIR Mobile应用性能解决方案

    这个flex  mobile开发,一般原生开发也许是最合适的方式,但是涉及到跨平台的问题,有精力的团队一般都会逐个基于移动操作系统进行开发.但是如果追求短小,精悍,快速,希望能够跨平台,基于html5 ...

  5. H3C Basic NAT配置示例

  6. CSS 伸缩布局

    转载于:https://blog.csdn.net/weixin_41342585/article/details/80140513 1. flex-direction:设置伸缩容器中成员的排列方式 ...

  7. 如何让in/exists 子查询(半连接)作为驱动表?

    一哥们问我,怎么才能让子查询作为驱动表? SQL如下: select rowid rid from its_car_pass7 v where 1 = 1 and pass_datetime > ...

  8. P1079 好朋友

    题目描述 小可可和所有其他同学的手腕上都戴有一个射频识别序列号码牌,这样老师就可以方便的计算出他们的人数.很多同学都有一个"好朋友" .如果 A 的序列号的约数之和恰好等于B 的序 ...

  9. JVM系统属性 OS环境变量 JVM启动参数

    JVM系统属性(System Properties) 1.不支持通过文件查看和设置系统属性 2.可以通过JDK自带的工具jvisulavm.exe查看 3.可以在Java程序中使用API来查看系统属性 ...

  10. C# 如何引用 WshShell 类

    如果想要创建快捷方式等,很多使用都需要引用 WshShell 类,这个类需要通过 COM 的方法引用 引用 WshShell 不是在一个程序集,而是 Windows Script Host Objec ...