Django框架

#手动写web框架,包括wsgi,数据库连接,登陆验证
https://www.cnblogs.com/yuanchenqi/articles/8946917.html

#三期讲解:
https://www.cnblogs.com/yuanchenqi/articles/6083427.html
框架:一些常用的内容,不想反复去写,把它提炼出来就是一个框架。

web框架:是一种开发框架,用来支持动态网站、网络应用和网络服务的开发。这大多数的web框架提供了一套开发和部署网站的方式,也为web行为提供了一套通用的方法。web框架已经实现了很多功能,开发人员使用框架提供的方法并且完成自己的业务逻辑,就能快速开发web应用了。浏览器和服务器的是基于HTTP协议进行通信的。也可以说web框架就是在以上十几行代码基础张扩展出来的,有很多简单方便使用的方法,大大提高了开发的效率。

web服务器:就是对http的请求进行解析
WSGI的全称是Web Server Gateway Interface,翻译过来就是Web服务器网关接口。具体的来说,WSGI是一个规范,定义了Web服务器如何与Python应用程序进行交互,使得使用Python写的Web应用程序可以和Web服务器对接起来。
比如和nginx, apache对接


#打开文件,读
def f1():
f1=open("index1.html","rb")
data1=f1.read()
return [data1]

def f2():
f2=open("index2.html","rb")
data2=f2.read()
return [data2]

def application(environ, start_response):

print(environ['PATH_INFO'])
path=environ['PATH_INFO']
start_response('200 OK', [('Content-Type', 'text/html')])


if path=="/yuan":
return [f1()]

elif path=="/alex":
return [f2()]

else:
return ["<h1>404</h1>".encode("utf8")]


httpd = make_server('', 8502, application)

print('Serving HTTP on port 8084...')

# 开始监听HTTP请求:
httpd.serve_forever()


MVC和MTC本质上是一个东西, MVC是通用的一个概念,MTV只针对django的

M:数据库的操作。ORM框架就职操作数据库用的。
V:html文件,是用户能看到的那些。这和MTV中的view不同,MTV中的view表一个个的处理函数。和MTV中的T相同
C:router() URL的分发及函数, 同MTV中的V

flask定制性更强,Django全,快速开发。 写个简单的django
pip3 install django
创建一个django项目,
django-admin startproject mysite
在当前目录下就会出现mysite的文件夹:
dir mysite
C:\Users\pro\mysite 的目录

2020/04/17 16:34 826 manage.py #启动文件
2020/04/17 16:34 <DIR> mysite
cd mysite #项目的全局内容
2020/04/17 16:34 3,216 settings.py #自己的应用要手动注册到里面
2020/04/17 16:34 784 urls.py #写urlpatterns,即url和view函数的对应
2020/04/17 16:34 406 wsgi.py
2020/04/17 16:34 0 __init__.py

项目里面有多个应用,为的功能创建应用:
python3 manage.py startapp blog
#在mysite项目下会出现一个blog的目录:
2020/04/17 16:57 <DIR> blog
2020/04/17 16:34 826 manage.py
2020/04/17 16:57 <DIR> mysite

cd blog
2020/04/17 16:57 66 admin.py
2020/04/17 16:57 88 apps.py
2020/04/17 16:57 <DIR> migrations
2020/04/17 16:57 60 models.py
2020/04/17 16:57 63 tests.py
2020/04/17 16:57 66 views.py
2020/04/17 16:57 0 __init__.py

#也可以用pycharm去创建一个django项目:
file--new project--django
#选文件夹位置
#设一个app名字

#命令行启动一个django,本机端口8080
python manage.py runserver 8080

 

一般js,css,图片等文件放在static文件夹里,static和tmepletes同一层.
#且在settings的base.py要加上:
STATIC_URL = '/static/'
#别名,前端引用时用/static/xx来引用,如<h1 class="logo-name"><img src="/static/common/img/logo.png" style="width: 70%;height: 8%;margin-top: -15px"></h1>
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'), #这里的static是实际的文件夹名
]
这样Django才能找到.

在html中引用:
方法一:
<script src="/static/query-1.8.2.min.js"></script>
方法二:(常用)
靠上的部分增加一句:{% load staticfiles %}

<script src="{% static 'jquery-1.8.2.min.js' %}"></script>

posted on 2020-04-26 16:26  锋锋2019  阅读(141)  评论(0)    收藏  举报

导航