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 启动文件,入口文件