zoukankan      html  css  js  c++  java
  • Web框架

    一.web框架的作用

    避免重复代码,将重复的部分进行封装。自己实现一个服务器的作用。

    参数environ是字典类型的数据,里面存放客户端的http头信息。

    url的路径但不包括网址=environ["PATH_INFO"]

    eg:http://127.0.0.1/www/book     path=/www/book

    二.MVC与MTV,wgsi模块实现

    MVC:M model 存放数据库的内容

             V view 存放网页内容

              C  control  存放urls 映射的函数

    MTV:M model存放数据库的内容

              T temple  存放HTML网页内容

             V  view 吃饭urls映射的函数

     三.各种文件的作用

     manager.py程序的入口

    mysite//项目名称   wsgi.py//是socket 文件 setting//配置文件  urls.py函数映射

    blog//子项目 model.py//数据库文件   views.py//写函数  

    Temple//写HTML文件 

    from  django.shortcuts import  rander,Httprespnose
    import time
    times=time.time().now()
    def cur_time(request):   //request相当于eniover  客服端的参数
          return  rander(request,"cur_time.html",{'abc':times})//abc是任意名称但再HTML文件的{{abc}}会替换成times的内容
    //render 有渲染的效果,即会对传来的HTML文件,处理后用Httpesponse()的方式传过去

     四.user例子

    {% for i In user_list %}
    //user_list是后端发过来的列表,列表里的元素是字典
      <tr>
    <td>{{  i.username}}</td>
    <td>{{  i.sex}}</td>
    <td>{{  i.age}}</td>//python中取字典的值是索引的方式,模板语言是   .  的方式
    
    {% end for %}
    //HTML文件会先发给views文件对应的函数经过render()进行渲染,将模板语言中的内容解析后发给网页

     五.model用来创建数据库

    数据来源:www.cnblogs.com/yuanchenqi/articles/6083427.html

     六.statics静态文件

    该文件夹用来存放is,jq,网页的img文件

    通过对setting文件的内容设置

          STATIC_URL='/abc/'  //用abc文件夹来代替ststics文件,即别名

           STATICFILES=(

                          os.path.join(BASE_DIR,"ststics"),//设置存放的位置,是物理路径

                  )

     七.urls中的参数别名

    1.匿名参数     根据分组的顺序,给对应的函数添加形参,形参的位置与分组相关

    2.实名参数       (?p<分组名>pattern)此时形参名就是分组名,形参与位置无关

    3.re.group(分组名)方式反向调用分组的内容

    4.匹配的urls的别名   给前端使用

    URLPATTER={

        url(r"^index",view.index,name='alex'),  //alex是匹配出来的以index开头的url别名

    }

    5.模板语音调用别名

    action={% url  "alex" %}

     6.经过render()渲染后的前端网页 ,必须是HTML,css is 语言,不能是模板语言

    action为空默认以该网页处理表单

    十.几个重要函数

    render (request,“要返回的html语句,或文件”)

    render_to_request("要返回html语句,文件")

    redicect("要跳转的url地址,会走逻辑思维")//要走逻辑路径先找url然后执行后台,render仅仅返回html内容。

    十一.,temple与content

           HTML就是temple模板,后面的参数就是content

           用content去渲染temple

    十二.模板语言

          1.{{  变量  }}

       2.   获取变量的内容   用.

       3.{% if False %}

    .......

       {%  elif  obj %}

    .....

    {% endif%}

    4.filter过滤器    {{  obj|函数名:参数 }}

    对字符串进行解析,obj | safe

     十三.自定义函数和filter

          函数调用:{%   函数名 参数1 参数2.....%  }     filter: {{ 变量名| filter名:参数二     }}仅仅两个参数,但是if条件可以用,函数不能用在if上。

    参考:   www.cnblogs.com/yuanchenqi/articles/6083427.html

  • 相关阅读:
    Asp.Net Core&Docker部署到树莓派3B中
    KnockoutJS-与服务端交互
    服务部署到Swarm Cluster中
    新建项目加入到生成流水线中
    约定Service构建方式
    约定Jenkins构建脚本
    约定新项目的搭建流程
    设计生成自动化流水线
    新建项目到Jenkins中
    把ABP框架部署到Docker中
  • 原文地址:https://www.cnblogs.com/gjx1212/p/13069752.html
Copyright © 2011-2022 走看看