第四十四天

1 web应用

2 cs和bs架构

3 http协议----重点  - 

 -请求头:  

 请求首行 get / http/1.1\r\n     

key:value\r\n     

key:value\r\n     

\r\n     

请求体的内容     

 -响应头:   响应首行 http/1.1 200 ok \r\n   

响应头:  key:value\r\n     

\r\n  

 响应体:  html的代码  -状态码: 1开头  2开头 3开头 4开头  5开头

4 python中主流web框架

 a socke  b 路由和视图函数映射关系  c 模板的渲染

 django  uwsgi/wsgiref  

flask    

tornado  web2.py  

5 django的安装与使用  

1 pip3 install django==1.11.9  

2 django-admin startproject 项目名字  

3 切到项目里python3 mangage.py startapp app的名字  

4 pycharm打开项目,启动项目,点绿色三角  

5 执行项目:python3 manage.py runserver 127.0.0.1:8006       python3 manage.py runserver 8006       python3 manage.py runserver  

6 目录结构:   

1 工程名的文件夹:settings:全局配置       

urls:路由根视图函数映射关系     

app名字的文件夹:views:视图函数  

models:orm关系映射    

今天内容:

1 django中app的概念:  大学:----------------- 项目   信息学院 ----------app01   物理学院-----------app02  

****强调***:创建了app,要在配置文件中注册   ...

2 模板路径配置:  

1 templates文件夹

 2 settings里注册一下   

3 静态文件配置:  

1 STATIC_URL = '/static/'    一般不要改  

2 创建一个static文件夹       一般不要改

 3 STATICFILES_DIRS=[   os.path.join(BASE_DIR, 'static'),  创建的文件夹路径(可以写多个)   ]  

4 完整版登录功能  

1 login.html    ***重点***

1 action:提交到后台的地址三种写法:     

1 http://127.0.0.1:8000/login     

2 /login/   推荐用    

 3 空     

2 method  post方式     

3 <input type="submit" value="提交">或<button></button>     

type不可以是button     

<form action="http://127.0.0.1:8000/login" method="post">    

<p>用户名:<input type="text" name="name" class="form-control"></p>    

<p >     密码:<input type="password" name="pwd" class="form-control">    

</p>    <input type="submit" value="提交">   </form>

 2 视图层:   1 request.method  ----前台提交过来请求的方式   

2 request.POST(相当于字典)----post形式提交过来的数据,(http请求报文的请求体重)   

3 request.POST.get('name') ----推荐用get取值(取出列表最后一个值)   

4 request.POST.getlist('name')-----取出列表所有的值_   

5 前台get方式提交的数据,从request.GET字典里取

 3 链接数据库(防止注入,推荐以下写法)   cur.execute('select * from user where name=%s and password=%s ',[name,pwd])  

5 get请求和post请求  get:获取数据,页面,携带数据是不重要的数据(数据量有大小限制)  post:往后台提交数据 

6 新手三件套总结  1 render--返回页面   默认会去templates里找,注意路径  2 redirect--重定向  3 HttpResponse  本质:都是返回HttpResponse的对象

7 pycharm连接mysql   8 orm介绍  1 ORM即Object Relational Mapping,全称对象关系映射。

 优点:   1 不用写sql,不会sql的人也可以写程序   2 开发效率高  

2 缺点:   1 可能sql的效率低

 3 如何使用:   如果连接mysql:在setting里配置:       'default': {     'ENGINE': 'django.db.backends.mysql',     'HOST': '127.0.0.1',     'PORT': 3306,     'USER': 'root',     'PASSWORD': 'admin',     'NAME': 'lqz',    }  

 在app下的__init__.py里写:   import pymysql   pymysql.install_as_MySQLdb()    

4 django-orm:   1 不能创建数据库(需要手动创建数据库)   2 可以创建数据表   3 可以创建字段     5 数据库迁移   1 python3 manage.py makemigrations   ----记录一下数据库的变化   2 python3 manage.py migrate          ----将变化同步到数据库中      9 orm创建表

创建一个app 

python3 manage.py startapp app01 

在settings里面的INSTALLED_APPS中加入 ‘app01.apps.App01Config’  

在网址后面输入admin会弹出一个登入界面    

猜你喜欢

转载自www.cnblogs.com/zhouhao123/p/9910571.html