Django 框架
WEB 与 服务器
WEB : 表示用户可以浏览的网页内容(HTML,CSS,JS)
服务器
专门给用户提供服务的一台机器
1.硬件与软件
硬件范畴:一台机器
软件范畴:一个能够接受用户请求并给出响应的程序
1.APACHE
2.TOMCAT
3.IIS(Internet Information Service)
4.Nginx
2.服务器的作用
1.存储WEB上所需要的信息(HTML,图片,js,css,音视频)
2.处理用户的请求(request)并给出响应(response)
3.执行服务器端的程序 : 查找数据库
3.服务器 与 WEB之间的关系
WEB需要放在服务器上才能够被用户访问
框架
什么是框架
框架是一个为了解决开放性问题而存在的一种结构.框架本身会提供一些最基本的功能.我们只需要在基本功能之上搭建属于自己的操作即可.
PYTHON WEB 框架
1.Django : 重量级的WEB框架
2.Tornado : 异步框架
3.Flask : 轻量级框架
Django 框架
什么是Django
是一个开源框架,2005年发布,采用Python语言编写的.早期是做新闻和内容管理的网站的.Django本身提供了强大的后台管理系统.
Django的框架模式 - MTV
M : Models 层
模型层,负责数据库建模以及CRUD的操作
T : Templates 层
模板层,处理用户显示的内容的,比如:html
V : Views 层
视图层,处理与用户交互的部分内容
MVC : 三层架构
M: Models,模型层,与数据库打交道
V: Views,视图层,处理用户显示的内容的
C: Controller,控制器层,处理与用户交互的部分内容
MTV MVC
M .... M
T .... V
V .... C
Django的官方介绍
官网:http://www.djangoproject.com
中文文档:http://djangobook.py3k.cn/2.0/
Django 框架的使用
安装Django框架
查看已安装的Django版本
1.进入到终端以及python交互模式
python3 / ipython3
2.交互模式中 输入 import django
如果未报错:当前环境下已经安装好Django
如果报错:当前环境未安装过Django
3.查看已安装的版本
交互模式中:django.VERSION
安装
1.在线安装 - 使用 pip / pip3
sudo pip3 install django
(安装Django的最新版本)
sudo pip3 install django==1.11.8
(安装Django的指定版本)
2.离线安装
1.下载Django包
2.在环境下解压Django包
tar -xvf Django-1.11.8.tar.gz
3.进入到目录中,找到 setup.py 文件
sudo python3 setup.py install
使用Django
1.创建目录
用于保存所有的Django项目
mkdir Django
使用 django-admin 指令创建Django项目
语法:django-admin startproject 项目名
2.启动服务,访问网站
在项目中找到 manage.py
通过manage.py启动项目(服务)
python3 manage.py runserver
3.访问网站
启动服务之后,浏览器访问
http://localhost:8000
http://127.0.0.1:8000
Paris@Python:~$ mkdir Django
Paris@Python:~$ cd Django/
Paris@Python:~/Django$ django-admin startproject Paris
Paris@Python:~/Django$ cd Paris/
Paris@Python:~/Django/Paris$ ls
manage.py Paris
Paris@Python:~/Django/Paris$ python3 manage.py runserver
Performing system checks...
创建项目并运行
就可以访问框架自带的一些内容了
Django自带一套基础的后台管理系统
框架中自带的一些文件
Pycharm也可以创建Django项目
Django 项目结构介绍
1.manage.py
负责执行Django中的各项操作
如:
启动服务:runserver
创建应用:startapp
... ...
2.主目录(目录名称与项目名称一致)
1.__init__.py
项目的初始化文件,服务被启动时,该文件自动被执行
2.urls.py
项目的基础url配置文件(路由配置文件)
3.wsgi.py
应用服务器配置文件
4.settings.py
项目的配置文件
1.BASE_DIR:获取当前项目的绝对路径
2.DEBUG : 调试模式
开发过程:推荐使用 True
上线运行:必须改为 False
3.ALLOWD_HOSTS
设置允许访问本项目的地址列表
如果为空,只有本机能访问(localhost/127.0.0.1)
推荐写 ['*'],任何表示该机器的地址都可以访问当前项目
如果允许被其他机器访问的话,启动服务时,必须使用以下方式:
./manage.py runserver 0.0.0.0:端口号
4.INSTALLED_APPS
指定已安装的应用,如果有自定义应用的话,需要在此注册
5.MIDDLEWARE
注册中间件
6.ROOT_URLCONF
指定项目的基础路由配置文件
7.TEMPLATES
指定模板的信息
8.DATABASES
指定数据库的信息
9.LANGUAGE_CODE
语言设置,如果需要中文的话,允许将值更改为 "zh-Hans"
10.TIME_ZONE
指定时区,建议修改为 "Asia/Shanghai"
URL的使用
1.urls.py
默认在主目录中,主路由配置文件,包含所有的地址映射
2.测试
1.在主目录中,创建 views.py
作用:包含所有定义好的视图(处理程序)
3.url 函数
作用:为了匹配用户的访问路径
语法:
url(regex,views,kwargs=None,name=None)
1.regex:允许是正则表达式,匹配请求的url的
2.views:对应的视图处理函数
3.kwargs:字典,用来向views传参的,如果没有参数的话则可以省略
4.name:字符串类型,为url起别名,在地址反向查询时使用
4.通过url向视图传参
http://localhost:8000/run/15
http://localhost:8000/run/26
http://localhost:8000/run/78
1.使用正则表达式传参
使用子组传参,一个子组是一个参数,要传递多个参数的话使用多个子组
子组 - ()
urlpatterns = [
url(r'^run/$',run_views),
访问路径是run/的时候,交给run_views去处理
url(r'^run/(\d{2})/$',run1_views),
访问路径是run/两位数字的时候,交给run1_views去处理
url(r'^run/(\d{4})/(\d{2})/$',run2_views),
访问路径是run/四位数字/两位数字的时候,交给run2_views去处理
]
注意:
1.url()中,一个子组表示一个参数
2.在views中,对应的处理函数要根据url()中子组的个数,相应的定义参数.定义的参数要位于request之后