zoukankan      html  css  js  c++  java
  • Django 0.4

    一、内容回顾

    1. URL写法:127.0.0.1:8000/edit_publisher/?id=1&name=zhangzhao&age=16

       a. 用&连接多个条件

       b. ?前的/可以省略

       c. URL中不能有空格

     

    2. form表单中的action如果传空,默认返回当前页面。

       应用:对一些跳转页面,可以手动拼接id等信息,亦可传空,默认跳转

     

    3. 以编辑书籍为例, 如果method是POST执行一段代码,如果method不是POST执行另一段代码。

       通过连接直接跳转改路径/页面触发的不是POST方法;当在编辑书籍页面提交form表单触发的是POST方法。

     

    二、今日内容

    1. 删除、编辑书籍信息

     

    2. Django的模板语言(字符串替换的规则)

        1. {{变量}} {{变量.属性}}

     

        2. for循环

            {% for i in xx %}

                {{i}}

            {% endfor %}

     

            {{ forloop.counter }}  --> 计数

     

            {% empty %}  -->如果for循环的列表为空的时候显示的内容

     

        3. if判断

            {% if 条件%}

                条件成立要做的事儿

            {% else %}

                条件不成立要做的事儿

            {% endif %}

     

    3. 作者增删改查 (作者和书是多对多的关系book   author   book2author)

        1. 作者关联的书有多个 (我们怎么通过Django 的ORM 取到和我这个作者关联的所有书)

        author_obj.books --> none; 在author表中没有book列

        author_obj.books.all()   --> 该作者所著书籍对象的列表

        # 在html的模版语言中不加(),即用author_obj.books.all,django会自动帮忙处理拼接

     

        2. 如何在页面上展示出 我这个作者关联的所有的书籍

           # 在html的模版语言中不加(),即用author_obj.books.all,django会自动帮忙处理拼接

           

            {% for book in author_obj.books.all%}

            {% if forloop.last%}  #最后一个值

                {{book.title}}

            {% else %}

                {{book.title}},

            {%endif%}

            {% endfor %}

        

        3. 如何更新作业关联的书籍

           author.books.set(new_book_ids)

           # 该操作执行之后,会执行自动保存操作; 故,之后不需.save()手动保存

     

    4. 当出现黄页时,看trackback,标成深色的即为出错位置

     

    5. request.POST.get(),只能用于取一个值的情况

       request.POST.getlist(),可用于取多个值(以列表形式)。通常如果html中出现select multiple或checkbox的时候,可能会用到getlist

     

    6. 如果想设置默认跳转,在url中添加

       url(r'^$', views.publisher_list)

  • 相关阅读:
    2013/11/21工作随笔-PHP开启多进程
    php中mysql操作的buffer知识
    你不一定懂的cpu显示信息
    好文收藏系列(三)
    doctrine2到底是个什么玩意
    制作火焰图(纯笔记)
    《精通Linux内核必会的75个绝技》知识杂记
    BIG5, GB(GB2312, GBK, ...), Unicode编码, UTF8, WideChar, MultiByte, Char说明与区别
    sed替换换行符“ ”
    mysql将字符串字段转为数字排序或比大小
  • 原文地址:https://www.cnblogs.com/yangli0504/p/9184610.html
Copyright © 2011-2022 走看看