MVC框架
MVC简介
MVC最初是由施乐公司旗下的帕罗奥多研究中心中的一位研究人员给 smalltalk语言发明的一中软件设计模式。
MVC的产生理念: 分工。让专门的人去做专门的事。
MVC的核心思想: 解耦。
MVC的思想被应用在的web开发的方面,产生了web MVC框架。
Web MVC框架模块功能
通过浏览器注册用户信息。
M:Model,模型, 和数据库进行交互。
V:View,视图, 产生html页面。
C:Controller,控制器, 接收请求,进行处理,与M和V进行交互,返回应答。
Django框架
简介
Django是劳伦斯出版集团的开发人员为开发新闻内容网站而设计出来的一个软件,它遵循MVC思想,但是有自己的一个名词,叫做MVT。
Django遵循快速开发和DRY原则。Do not repeat yourself.不要自己去重复一些工作。
MVT各部分功能
M:Model,模型, 和MVC中M功能相同,和数据库进行交互。
V:View,视图, 和MVC中C功能相同,接收请求,进行处理,与M和T进行交互,返回应答。
T:Template,模板, 和MVC中V功能相同,产生html页面。
项目创建
创建Django项目
命令:
django-admin startproject 项目名
项目目录如下:
init.py: 说明test1是一个python包。
settings.py: 项目的配置文件。
urls.py: 进行url路由的配置。
wsgi.py: web服务器和Django交互的入口。
manage.py: 项目的管理文件。
创建Django应用
一个项目由很多个应用组成的,每一个应用完成一个功能模块。
创建应用的命令如下:
python manage.py startapp 应用名
注意:创建应用时需要先进入项目目录。
应用目录如下:
init.py: 说明目录是一个Python模块。
models.py: 写和数据库项目的内容, 设计模型类。
views.py: ,接收请求,进行处理,与M和T进行交互,返回应答。
定义处理函数,视图函数。
tests.py: 写测试代码的文件。
admin.py: 网站后台管理相关的文件。
应用注册
建立应用和项目之间的联系,需要对应用进行注册。
修改settings.py中的INSTALLED_APPS配置项。
settings.py的配置项
- BASE_DIR
BASE_DIR = Path(__file__).resolve().parent.parent # 项目的根目录 # 用于绑定当前目录的绝对路径(动态计算出来),所有文件夹都可以依赖此路径
- DEBUG
DEBUG = True # 项目的启动模式 # True:调试模式(1.代码重改自动重启,2.报错页面) # False:上线模式
- ALLOWED_HOSTS
# 设置允许访问到本项目的host头值 []列表,表示请求头中host为127.0.0.2,localhost能访问本目录 -DEBUG =True 时有效 ['*'],表示任何请求头的host都能访问到当前项目 ['192.168.1.3','127.0.0.1']表示只有当前两个host头能访问到当前项目
- INSTALLED_APPS
用于指定当前项目中安装的应用列表
- MIDDLEWARE
注册中间件
- TEMPLATES
用于指定模板的配置信息
- DATABASES
# 用于指定数据库的配置信息 # mysql数据库配置 DATABASES = { 'default': { # 'ENGINE': 'django.db.backends.sqlite3', 'ENGINE': 'django.db.backends.mysql', #指定数据库类型 'NAME': 'django_learn', # 数据库的名字 'USER': 'root', # 数据库的用户名 'PASSWORD': '12345678', # 数据库密码 'HOST': 'localhost', # 数据库的host地址 'PORT': 3306, # 数据库在主机的端口 } }
- LANGUAGE_CODE
用于配置指定语言,admin界面等等 英文: "en-us" 中文: "zh-Hans"
- TIME_ZONE
用于指定当前服务器时区 世界标准时间: "UTC" 中国时区: "Asis/Shanghai"
- ROOT_URLCONF
用于配置主url配置
- 自定义配置项
settings.py 中可以添加开发人员自定义的配置 名字尽量个性化,防止覆盖共有配置 settings.py中所有的配置项都可以按需在代码中引入 引入方式: from django.conf import settings