美文网首页
【Django实践】_点滴发现

【Django实践】_点滴发现

作者: 大婶N72 | 来源:发表于2017-07-11 17:01 被阅读15次

    持续更新中......

    真正的稳定,是自己不断成长,不断寻找新的空间。与其要稳定,不如开始拥抱这个变化的时代,让自己准备好。

    一、django链接mysql数据库

    图1 数据库链接示例

    解释和理解:

    1.connect函数返回连接对象,这个对象表示目前和数据库的会话。

    2.连接对象方法:

    (1).commit方法总是可用的,但如果数据库不支持事务,它就没有任何作用。如果关闭了连接但还有未提交的事务,它们会隐式地回滚---但是只有在数据库支持持回滚的时候才可以。

    (2).rollback方法可能不可用,因为不是所有的数据库都支持事务(事务是一系列动作)。如果可用,那么就可以“撤销”所有未提交的事务。

    (3).cursor方法将我们引入另外一个主题:游标对象。通过游标扫行SQL查询并检查结果。游标连接支持更多的方法,而且可能在程序中更好用。

    3.游标:

    (1).游标是一段私有的SQL工作区,也就是一段内存区域,用于暂时存放受SQL语句影响到的数据。通俗理解就是将受影响的数据暂时放到了一个内存区域的虚表中,而这个虚表就是游标。

    (2).数据库中的事物可以回滚,而游标在其中起着非常重要的作用,由于对数据库的操作我们会暂时放在游标中,只要不提交,我们就可以根据游标中内容进行回滚,在一定意义有利于数据库的安全。

    4.游标对象方法:

    (1).fetchone() 返回第一条数据。

    (2).fetchall() 返回结果集中的全部数据,结果为一个tuple的列表。每个tuple元素是按建表的字段顺序排列。

    5.django数据库中的时间格式与页面渲染出来的时间格式不一致的处理:

    图2 页面显示数据库时间

    6.django处理带有html符号的文案信息展示在页面是,需要增加一个屏蔽安全的备注,具体实例如下:

    {{ novel.description|safe}}  处理html格式在页面正常显示效果

    带有html格式的信息

    7.request.POST处理返回的数据是多个值

    使用django处理post数据时,最多的就是使用request.POST['key']获取参数的值,在遇到问题之前我从没想过看request中具体的数据是什么。

    (1).request数据,实则是一个类dict数据

    request数据

    (2).获取type-request和name-percase参数的值,这个querydict的处方法与python中处理dict略有差别,举例如下:

    request.POST['type-request']=u'post'

    request.POST.getlist('name-percase')=[u'phone', u'type']

    从上面的例子中我们能看出来,对于QueryDict的处理中,传统的获取字典键的值,实际返回的是该列表的最后一个值,而如果要获取整个列表的数据,则需要使用.getlist('key')方法。参考:http://www.imooc.com/wiki/detail/id/3203

    相关文章

      网友评论

          本文标题:【Django实践】_点滴发现

          本文链接:https://www.haomeiwen.com/subject/noortxtx.html