DJANGO基础

第一部分:

Http协议:一种Http 短连接。

请求头:
    connection: keep-alive (默认的)\r\n
    token: dbnsjandjsandjsandjsandjksa (自定义)
    \r\n\r\n:表示请求头数据到这里结束
请求体:
  请求的内容
响应部分

响应的状态码:
200  请求已成功

403  服务器已经理解请求,但是拒绝执行它。

404  请求失败,请求所希望得到的资源未被在服务器上发现,就是没有这个界面。

500  服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理。一般来说,这个问题都会在服务器端的源代码出现错误时出现。

502 (bad gateway)作为网关或者代理工作的服务器尝试执行请求时,无效的响应,此时要寻找网络问题。

响应体:(就是一大块字符串)
用户用户看到的所有的内容

 

第二部分:

web重要的组成部分.

 a. socket服务,

  提供了服务器,我们的浏览器就是一个客户端,这就是cs框架。

 b. 路由系统:
  将 uri 就是浏览器后边的路径与处理逻辑函数进行对应。

 c. 模板引擎渲染
  将数据库中的数据与html进行相结合, 模板的渲染。渲染就是对mysql的数据和我们的html网页,通过js,jq技术进行的一个数据整合。

 

 

第三部分:基础的django用法:

  第一个问题:如何将我们的数据,传入到我们的HTML页面中? 

渲染的方式:
  后台:
    name = "字符串"
  前台(HTML端):

    {{name}}   解释:两个大于号包裹,我们的数据就可以在页面中使用,例如列表中的数据,这个针对于普通变量,字符串和整型

  列表:

  方式一:
    {% for item in mylist%}
      {{item}}
     {% endfor %}

   利用for来将数据一个个展示出来,注意展示的数据需要两个{{}}包裹,同时for循环只要一对,但是需要%号。
  方式二:按照索引来取值
    {{mylist.0}}
    {{mylist.1}}

  字典:可以通过for来进行取值,方式和列表一致。
    {% for key, val in mydict.items %}
      {{key}}       {{val}}
       {% endfor %}

 

  第二个问题:HTML页面中的数据,我们又要怎么传回来?一个重要的请求头,啥都有。
url:
request: 用户所有的请求信息:
请求方式: request.method  


获取post中的内容: request.POST.get('key')

POST的话一般用一个表单:form表单里使用。

<form action="/add_class/" method="post">
班级名称: <input type="text" name="classname">
<input type="submit" value="提交">
</form>
可以看到发送的格式是post,name确定我们的变量名,例如这里变量名为classname
 obj=request.POST.get('classname')
这样我们就可以获取到我们要的值了。

获取get中的内容 :request.GET.get('key')  

准确的说:利用

<a href="/del_class/?id={{ item.id }}">删除</a>
利用这个?就赋值给了id变量,后端就可以进行使用,判断逻辑。

重定向:
redirect('/login/')   重定向,可以是一个路由,网页地址都可以跳转,当然会在原来页面直接进行跳转,不会新开的。

小结:

  这里有三个函数,对于目前的很多功能,都会用到 

render  :往回发一个静态页面,以及数据
redirect:重定向,进行跳转
HttpResponse:发回去一个字符串,会在页面显示。
 
 
 

 

 

 

 

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/zhangte03/p/11166459.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值