Python全栈 Web(Django框架、概述、安装)

简介: Python、Django、框架、服务器、客户端、浏览器、交互、WEB、Python前端、CSS、JAVA、HTML、H5、PHP、JavaScript、JQuery、分布式开发
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之后


相关文章
|
1月前
|
存储 Java 数据处理
(numpy)Python做数据处理必备框架!(一):认识numpy;从概念层面开始学习ndarray数组:形状、数组转置、数值范围、矩阵...
Numpy是什么? numpy是Python中科学计算的基础包。 它是一个Python库,提供多维数组对象、各种派生对象(例如掩码数组和矩阵)以及用于对数组进行快速操作的各种方法,包括数学、逻辑、形状操作、排序、选择、I/0 、离散傅里叶变换、基本线性代数、基本统计运算、随机模拟等等。 Numpy能做什么? numpy的部分功能如下: ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组 用于对整组数据进行快速运算的标准数学函数(无需编写循环)。 用于读写磁盘数据的工具以及用于操作内存映射文件的工具。 线性代数、随机数生成以及傅里叶变换功能。 用于集成由C、C++
268 0
|
1月前
|
Java 数据处理 索引
(Pandas)Python做数据处理必选框架之一!(二):附带案例分析;刨析DataFrame结构和其属性;学会访问具体元素;判断元素是否存在;元素求和、求标准值、方差、去重、删除、排序...
DataFrame结构 每一列都属于Series类型,不同列之间数据类型可以不一样,但同一列的值类型必须一致。 DataFrame拥有一个总的 idx记录列,该列记录了每一行的索引 在DataFrame中,若列之间的元素个数不匹配,且使用Series填充时,在DataFrame里空值会显示为NaN;当列之间元素个数不匹配,并且不使用Series填充,会报错。在指定了index 属性显示情况下,会按照index的位置进行排序,默认是 [0,1,2,3,...] 从0索引开始正序排序行。
182 0
|
1月前
|
Java 数据挖掘 数据处理
(Pandas)Python做数据处理必选框架之一!(一):介绍Pandas中的两个数据结构;刨析Series:如何访问数据;数据去重、取众数、总和、标准差、方差、平均值等;判断缺失值、获取索引...
Pandas 是一个开源的数据分析和数据处理库,它是基于 Python 编程语言的。 Pandas 提供了易于使用的数据结构和数据分析工具,特别适用于处理结构化数据,如表格型数据(类似于Excel表格)。 Pandas 是数据科学和分析领域中常用的工具之一,它使得用户能够轻松地从各种数据源中导入数据,并对数据进行高效的操作和分析。 Pandas 主要引入了两种新的数据结构:Series 和 DataFrame。
293 0
|
1月前
|
Java 数据处理 索引
(numpy)Python做数据处理必备框架!(二):ndarray切片的使用与运算;常见的ndarray函数:平方根、正余弦、自然对数、指数、幂等运算;统计函数:方差、均值、极差;比较函数...
ndarray切片 索引从0开始 索引/切片类型 描述/用法 基本索引 通过整数索引直接访问元素。 行/列切片 使用冒号:切片语法选择行或列的子集 连续切片 从起始索引到结束索引按步长切片 使用slice函数 通过slice(start,stop,strp)定义切片规则 布尔索引 通过布尔条件筛选满足条件的元素。支持逻辑运算符 &、|。
117 0
|
2月前
|
机器学习/深度学习 算法 PyTorch
【Pytorch框架搭建神经网络】基于DQN算法、优先级采样的DQN算法、DQN + 人工势场的避障控制研究(Python代码实现)
【Pytorch框架搭建神经网络】基于DQN算法、优先级采样的DQN算法、DQN + 人工势场的避障控制研究(Python代码实现)
|
2月前
|
机器学习/深度学习 算法 PyTorch
【DQN实现避障控制】使用Pytorch框架搭建神经网络,基于DQN算法、优先级采样的DQN算法、DQN + 人工势场实现避障控制研究(Matlab、Python实现)
【DQN实现避障控制】使用Pytorch框架搭建神经网络,基于DQN算法、优先级采样的DQN算法、DQN + 人工势场实现避障控制研究(Matlab、Python实现)
114 0
|
3月前
|
API 数据安全/隐私保护 Python
拼多多批量上架软件, 电商一键上货发布工具,python电商框架分享
多线程批量上传架构,支持并发处理商品数据 完整的拼多多API签名和token管理机制
|
JavaScript 前端开发 Linux
Python全栈 Web(Ajax JQuery-AJAX 跨域请求)
Flask、Python、Django、框架、服务器、客户端、浏览器、交互、WEB、Python前端、CSS、JAVA、HTML、H5、PHP、JavaScript、JQuery、分布式开发
5304 0
|
JavaScript Linux 应用服务中间件
Python全栈 Web(Ajax JSON JQuery)
Flask、Python、Django、框架、服务器、客户端、浏览器、交互、WEB、Python前端、CSS、JAVA、HTML、H5、PHP、JavaScript、JQuery、分布式开发
3045 0
|
Web App开发 前端开发 JavaScript
Python全栈 Web(jQuery 一条龙服务)
jQuery是一个轻量级的JS库 - 是一个被封装好的JS文件,提供了更为简便的元素操作方式
3464 0

推荐镜像

更多