web应用的概念

定义

web应用指的是通过浏览器访问的应用都是,web应用程序的优点是只要一个浏览器可以节省资源,客户端不需要主动更新,服务端更新即可,但是它也有缺点,比如一旦服务端出现问题,客户端立马受影响,当然还有前端工程师最苦恼的兼容性问题。

web框架

python中三大主流框架
1、Django框架 大而全,类似于航空母舰
2、flask框架,小而精,依赖于第三方模块
3、tornado框架 异步高性能框架

MVC和MTV模式

一、MVC:
M:model(跟数据打交道的)
V:View(视图,页面)
C:controller(控制器,主要写逻辑的)
S:service(服务层)
二、MTV:
M:model(模型层)
V:Views(视图层)
T:templates(模版层:html页面)

下载与安装

一、版本问题

Django 1.x 老项目在用
Django 2.x 新项目在用
Django 3.x 比较新

二、安装

pip3 install django==版本号
检查是否成功,terminal输入django-admin

创建Django项目

<要提前切换到项目要保存的位置>
1、命令行创建
django-admin startproject 项目名字
2、pycharm创建 new project 选择django
⚠️ 两者区别:
	(1)pycharm创建:自动生成templates文件夹,同时配置文件setting.py也会生成相对应的路径,在mac上会出现路径错误,这时候需要手动改:
	'DIRS': [os.path.join(BASE_DIR, 'templates'), ],
	(2)命令行创建:没有templates文件夹,同时配置文件也没有相应的路径,此时手动添加即可

启动Django项目

1、命令行启动
python3 manage.py runserver (+ip:port/port)
2、pycharm启动

创建应用

1、python3 manage.py startapp+名字 或者pycharm创建 tools==>run manage.py task
2、应用创建完之后一定要去配置文件里面注册
INSTALLED_APPS = [
	'django.contrib.admin',
	'django.contrib.auth',
	'django.contrib.contenttypes',
	'django.contrib.sessions',
	'django.contrib.messages',
	'django.contrib.staticfiles',
	'app01.apps.App01Config',-->可以全写
	'app02'-->也可以这样简单写
]

主要文件介绍

judysite Django项目名
	app01 应用名
		migrations 文件夹,存储数据迁移记录
		__init__.py 
		admin.py Django自带的后台管理
		apps.py
		models.py 模型层 数据库相关
		tests.py 测试脚本
		views.py 视图层 主要用来写逻辑的
judysite 
	__init__.py
	settings.	py Django暴露给用户可以配置的文件
	urls.py 路由层 写的是路径和函数的对应关系
	wsgi.py wsgiref模块
	templates 模版层 放html文件
	db.sqlites3 Django自带的小型数据库
	manage.py 启动文件,入口文件