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之后


相关文章
|
19天前
|
数据采集 中间件 Python
如何在Django框架中进行输入验证和过滤?
通过综合运用这些方法,可以在 Django 框架中有效地进行输入验证和过滤,提高应用的安全性和数据质量。同时,还可以根据具体的业务需求进一步扩展和定制验证逻辑。
102 64
|
1天前
|
Linux Python
Linux 安装python3.7.6
本教程介绍在Linux系统上安装Python 3.7.6的步骤。首先使用`yum`安装依赖环境,包括zlib、openssl等开发库。接着通过`wget`下载Python 3.7.6源码包并解压。创建目标文件夹`/usr/local/python3`后,进入解压目录执行配置、编译和安装命令。最后设置软链接,使`python3`和`pip3`命令生效。
|
19天前
|
监控 安全 测试技术
Django框架的表单验证和过滤机制是否可以应对复杂的安全场景?
综上所述,Django 框架的表单验证和过滤机制在一定程度上可以应对复杂的安全场景,但需要综合运用多种手段来进一步提升安全性,以适应不断变化的安全挑战。
27 1
|
26天前
|
搜索推荐 API 开发者
Django框架和Flask框架的适用场景分别是什么?
总体而言,Django 更适合需要全面功能和大规模开发的场景,而 Flask 则更适合灵活性要求高、小型项目或特定需求的开发。当然,具体的选择还应根据项目的具体情况、团队的技术能力和偏好等因素来综合考虑。在实际应用中,开发者可以根据项目的特点和需求,灵活选择使用这两个框架,或者结合它们的优势来构建更强大的 Web 应用程序。
|
24天前
|
存储 JSON 网络安全
使用 EFS 在 AWS Lambda 上安装 Python 依赖项
使用 aws lambda 时,开发人员面临的常见挑战之一是管理大型 python 依赖项。
29 1
|
2月前
|
XML JSON API
ServiceStack:不仅仅是一个高性能Web API和微服务框架,更是一站式解决方案——深入解析其多协议支持及简便开发流程,带您体验前所未有的.NET开发效率革命
【10月更文挑战第9天】ServiceStack 是一个高性能的 Web API 和微服务框架,支持 JSON、XML、CSV 等多种数据格式。它简化了 .NET 应用的开发流程,提供了直观的 RESTful 服务构建方式。ServiceStack 支持高并发请求和复杂业务逻辑,安装简单,通过 NuGet 包管理器即可快速集成。示例代码展示了如何创建一个返回当前日期的简单服务,包括定义请求和响应 DTO、实现服务逻辑、配置路由和宿主。ServiceStack 还支持 WebSocket、SignalR 等实时通信协议,具备自动验证、自动过滤器等丰富功能,适合快速搭建高性能、可扩展的服务端应用。
158 3
|
1月前
|
设计模式 前端开发 数据库
Python Web开发:Django框架下的全栈开发实战
【10月更文挑战第27天】本文介绍了Django框架在Python Web开发中的应用,涵盖了Django与Flask等框架的比较、项目结构、模型、视图、模板和URL配置等内容,并展示了实际代码示例,帮助读者快速掌握Django全栈开发的核心技术。
171 45
|
15天前
|
前端开发 安全 JavaScript
2025年,Web3开发学习路线全指南
本文提供了一条针对Dapp应用开发的学习路线,涵盖了Web3领域的重要技术栈,如区块链基础、以太坊技术、Solidity编程、智能合约开发及安全、web3.js和ethers.js库的使用、Truffle框架等。文章首先分析了国内区块链企业的技术需求,随后详细介绍了每个技术点的学习资源和方法,旨在帮助初学者系统地掌握Dapp开发所需的知识和技能。
2025年,Web3开发学习路线全指南
|
22天前
|
存储 前端开发 JavaScript
如何在项目中高效地进行 Web 组件化开发
高效地进行 Web 组件化开发需要从多个方面入手,通过明确目标、合理规划、规范开发、加强测试等一系列措施,实现组件的高效管理和利用,从而提高项目的整体开发效率和质量,为用户提供更好的体验。
27 7
|
26天前
|
开发框架 搜索推荐 数据可视化
Django框架适合开发哪种类型的Web应用程序?
Django 框架凭借其强大的功能、稳定性和可扩展性,几乎可以适应各种类型的 Web 应用程序开发需求。无论是简单的网站还是复杂的企业级系统,Django 都能提供可靠的支持,帮助开发者快速构建高质量的应用。同时,其活跃的社区和丰富的资源也为开发者在项目实施过程中提供了有力的保障。
下一篇
DataWorks