1、web框架css
一、什么是web框架?html
Web框架是一种开发框架,用来支持动态网站、网络应用程序及网络服务的开发。其类型有基于请求的和基于组件的两种框架。python
本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端。web
二、python中的web框架django
Python中的web框架有不少种,咱们主要学习以django为主的框架。浏览器
2、Python中的web框架服务器
一、Python中提供一个底层接口WSGI,这个底层接口很好的模拟了web服务器端的相似于Nginx和Apache的功能网络
二、手动编写一个web服务器处理客户端请求的代码1app
注:关键就在于这个make_server模块,运行该模块时必需要传入三个参数,第一个值为服务器端ip地址,第二个值为服务器端开发的web端口,第三个值为服务器端接收客户端请求时所要执行的函数,而建立这个函数又必须传入两个参数,第一个参数是客户端的请求信息,第二个参数是服务器端的回应信息。框架
三、手动编写一个web服务器处理客户端请求的代码2
四、手动编写一个web服务器处理客户端请求的代码3
注释:服务端判断客户端访问路径,若是存在则打开相对应的文件,返回该文件信息,若是须要添加新的网页信息就须要添加个if判断和建立个网页
五、手动编写一个web服务器处理客户端请求的代码4
注释:返回该文件信息,若是须要添加新的网页信息就须要建立个网页和添加一个函数和添加一条路由对应信息便可,逻辑性强。
3、经过命令建立一个django框架
一、安装django
pip3 install django (前提是python下的pip3命令安装而且添加到了环境变量中)
二、建立一个django程序
django-admin startproject mysite (django-admin这个命令是安装上django后在python目录中的Scripts内自动添加)
三、进入建立的django程序菜单,启动socket服务端(至关于启动了web网站)
注释:manage.py这个文件是对django这个网站的全部管理,runserver是运行的意思,127.0.0.1:8080是监听的ip和端口,默认不写则监听的ip和端口是127.0.0.1:8000.启动网站后就能够对网站进行访问了。
四、建立django项目
python mannage.py startapp 项目名称
4、在pycharm上建立一个django框架
一、安装略
二、如图所示:
注释:经过文件来建立一个fjango框架,选择框架保存路径,选择框架所需的python解释器,这样一个框架就建立好了
三、Django程序目录归纳:
mysite
mysite
- settings.py # Django配置文件
- url.py # 路由系统:url路径对应的执行函数之间的关系,该文件内写路径和函数
- wsgi.py # 用于定义Django用socket实现,测试环境用python下的wsgiref模块,生产环境咱们用python下的uwsgi模块。
manage.py #对当前Django程序全部操做能够基于 python manage.py 操做指令
四、Django程序目录下的url.py文件介绍
一、利用HttpResponse读取字符串进行传输
注释:该文件主要写路径和函数的对应关系,其中HttpResponse的做用就是里面写什么内容,用户就能看到什么内容,并且里面只能添加字符串
二、利用render直接读取文件进行传输
注释:render这个模块至少传递两个参数,且参数位置固定,第一个位置为客户端请求信息,第二个位置为服务器端返回给用户的文件信息(文件名),这个文件名路径配置信息在setting中,render读取文件时会按照读取路径自动查找。
五、Django程序目录下的settings.py文件介绍
一、该文件主要是配置一些须要引入文件的路径,好比模板路径(html)的配置,静态文件路径的配置(css js 图片等)。
二、html模板的路径配置
注释:BASE_DIR指代的是当前网站路径,templates指代的是网站路径下的文件夹,合起是说引入当前网站文件夹下的html模板。render命令就是根据该路径搜索html,若是须要添加其余模板就添加相应路径和文件夹名称便可。
三、静态文件的路径配置
注释:若是须要引入相应的静态文件只须要在settings文件最后面添加上STATICFILES_DIRS,而后再作相应配置便可,sta指代的是存放静态文件的文件夹,前缀意思是说在html中导入一个配置文件只须要href=''/前缀/配置文件名''
六、基于django实现的一个验证登陆代码
注释:redirect模块的做用是访问重定向,render第三个参数是模板引擎作渲染用的,若是出现要和html页面相结合{{值}},模板特殊写法。