[oldboy-django][1初始django]昨日回顾

1 web框架的本质:socket客户端和服务端通信,socket遵循http协议(短连接,无状态),规定了数据格式(消息头,消息体);传输的数据本质上是字符串

2 django:

  django安装(django-admin可执行文件)

    - pip3 install django

  创建django工程

    - django-admin startproject mysite

      - mysite

        -- urls.py

        -- settings.py

        -- wsgi.py

          wsgi是一个协议,wsgiref模块实现wsgi协议,实现socket

      - manage.py

  配置:

    - 配置模板路径

      -- TEMPLATES(DIRS:[os.path.join(BASE_DIR, "templates"])

    - 配置静态文件路径

      STATICURL:"static"

      STATICFILES_DIRS: os.path.join(BASE_DIR, "static")

  可以开始写程序

    - urls.py

      -- url ---> 函数login

      -- 编写函数login(request)

        --- request

          ---- request.POST  # 字典(消息体)

          ---- request.GET   # 字典(url上的数据)

          ---- request.method  #字符串

        --- return HttpResponse("字符串“)

        --- return render(request, "login.html", {"msg": "site"})

          --- login.html查找路径是从TEMPLATES下的dirs下开始查找

          --- render:查找模板,实现模板渲染(模板 + 数据); 数据通过参数字典{"msg": "site"})传递

        --- return redirect("login")

           -- 编写模板

        --- 模板引擎特殊标记

        ---  字符串

          {“msg”:"site}

          {{ msg }}}

             

        ---  列表索引

          {

          “msg”:"site,

          "msg2": [v1, v2] ,

          }

          {{ msg2.0}}

          {{ msg2.1 }}

        ---  列表循环

          {

          “msg”:"site,

          "msg2": [v1, v2] ,

          }

          <ul>

          {% for item in msg2 %}

            <li>{{ item }}</li>

          {% endfor %}

          </ul>

        ---  字典列表

          {

          “msg”:"site,

          "msg2": [

               { “k1”:"v1", "k2":"v2"  },{"k1":v3, "k2":"v4"}

              ] ,

          }

          <table>

          {% for item in msg2 %}

            <tr>

              <td>{{ item.k1 }}</td>

              <td>{{ item.k1 }}</td>

            </tr>

          {% endfor %}

          </table>

      

  

今日内容:

  班级表(单表)的操作(增删改查 + 新url的方式)

原文地址:https://www.cnblogs.com/liuzhipenglove/p/7727674.html