文章目录
初识Django框架
python三大主流web框架介绍
-
django框架
django框架是应用的最多的一个python web框架,大多数python开发人员都是先接触django框架,其特点在于: 大而全 自带的功能特别多 , 但不足之处在于: 有时候过于笨重
-
flask框架
flask框架是python web框架中最轻量化的一个框架,其自带的功能特别的少,但是其第三方模块特别特别的多,如果将flask第三方模块加起来完全可以盖过django框架,并且也越来越像django框架,但比较依赖第三方的开发者,因此,一般只应用于一些小型项目
-
tornado框架
是python框架中最牛逼的一个框架,他是一个异步非阻塞框架,并且支持高并发,甚至可以开发游戏服务器,但其功能较少,追求小而精。
在web 框架中有三样东西是所有框架中都有的,也是其核心部分:
- socket部分 (A) : 用来建立链接,传输数据
- 路由与视图函数对应关系(B) :路由匹配
- 模板语法© : 主要用于动态页面信息的加载
Django | Flask | Tornado | |
---|---|---|---|
A | 用的三方模块(wsgiref) | 用的三方模块(werkzeug) | 自己写的 |
B | 自己写的 | 自己写的 | 自己写的 |
C | 自己写的 | 用的三方模块(jinja2) | 自己写的 |
Django框架介绍
-
如何让计算机能够正常启动django项目
- 计算机的名称不能有中文
- 一个pycharm窗口只开一个项目
- 项目里面所有的文件也尽量不要出现中文
- python解析器尽量使用3.4~3.6之间的版本(如果项目报错 ,点击最后一个报错信息,把源码中的逗号删掉)
-
Django版本问题
- Django现在有1.x 2.x 3.x(直接忽略) 三个版本
- 1.x 和 2.x 本身差距也不大,学习主要以1.x为例 因为目前公司项目大部分以1.8和1.11版本为主,少量项目会用到2.0
-
Django安装
pip3 install django==1.11.11 或者用pycharm安装也行 验证安装是否安装成功的方式: 终端输入django-admin 看看有没有反应
Django基本操作
创建一个django项目
- 命令行操作
1. '先切换到你要创建项目的目录'
django-admin startproject mysite(项目名)
'''
会在命令所在目录建议一个名为mysite的项目文件
mysite文件夹
mysite文件夹
__init__.py
settings.py
urls.py
wsgi.py
manage.py
'''
2. 启动django项目
'''
一定要切换到manage.py文件所在的目录下
'''
python manage.py runserver
# 成功运行后 http://127.0.0.1:8000/ 就能访问了
3. 创建应用
python manage.py startapp app01(应用名)
# 应用名应该做到见名知意
- pycharm操作
1. new project 选择第一个django 即可创建一个django项目,并且会主动给你多建一个templates文件
2. 启动
1. 用命令行启动
2. 点击绿色小箭头启动
3. 创建应用
1.pycharm提供的终端直接输入完整命令
2. pycharm
tools
run manage.py task 提示(前期不建议使用,还是得记住完整命令)
应用解释
django是一款专门用来开发app的web框架
django框架就类似于是一所大学(空壳子)
app就类似于大学里面各个学院(具体功能的app)
比如开发淘宝
订单相关
用户相关
投诉相关
创建不同的app对应不同的功能
一个app就是一个独立的功能模块
***********************创建的应用一定要去配置文件中注册**********************
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'app01.apps.App01Config', # 全写
'app01', # 简写
]
创建出来的的应用第一步先去配置文件中注册 其他的先不要干
***********************************************************************
主要文件介绍
-mysite项目文件夹
--mysite文件夹
---settings.py 配置文件
---urls.py 路由与视图函数对应关系(路由层)
---wsgi.py wsgiref模块(不考虑)
--manage.py django的入口文件
--db.sqlite3 django自带的sqlite3数据库(小型数据库 功能不是很多还有bug)
--app01文件夹
---admin.py django后台管理
---apps.py 注册使用
---migrations文件夹 数据库迁移记录
---models.py 数据库相关的 模型类(orm)
---tests.py 测试文件
---views.py 视图函数(视图层)
命令行与pycharm创建的区别
- 命令行创建不会自动有templatew文件夹 需要你自己手动创建而pycharm会自动帮你创建并且还会自动在配置文件中配置对应的路径
# pycharm创建
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')]
]
# 命令行创建
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
]
'''
也就意味着你在用命令创建django项目的时候不单单要创建templates文件夹还需要去配置路径
'DIRS': [os.path.join(BASE_DIR, 'templates')]
'''
django小白必会三板斧
# 在 views.py中写
from django.shortcuts import render,HttpResponse,redirect
def index(request):
return (三板斧操作)
'''
HttpResponse
返回字符串类型数据
return HttpResponse('字符串')
render
返回html文件
return render(request,'html文档')
redirect
重定向
return redirect('https://www.mmzztt.com') # 重定向其他网址需要完整链接
return redirect('/home/') # 重定向自己的网址可以简写
'''