zoukankan      html  css  js  c++  java
  • Django 学习笔记之三 数据库输入数据

      假设建立了django_blog项目,建立blog的app ,在models.py里面增加了Blog类,同步数据库,并且建立了对应的表。具体的参照Django 学习笔记之二的相关命令。

      那么这篇主要介绍往数据库中添加数据,django默认的是sqlite3数据库。

      在建立完django_blog项目后,不要忘了把 blog 加入到 settings.py 中的 INSTALLED_APPS 中。

      

    一、同步数据库,创建相应的表

      具体的参照Django 学习笔记之二的的同步数据库。

    二、数据输入

      下面通过几个方式往blog对应的表中增加数据

      1、在命令框中输入

      进入django_blog项目文件夹,同时按住Ctrl+Shift键 点击“在此处打开命令行”在命令框内容输入:python manage.py shell

      

      从下图的红色框中可以看出有两种方式:

      

      通过Blog.objects.values()命令来查看刚才入库的数据

      2、批量导入

        用pycharm开发环境打开上面建立的项目django_blog,如下图:

     

     假设有个test.txt文本文件,如下:

    title 1*content 1
    title 2*content 2
    title 3*content 3
    title 4*content 4
    title 5*content 5
    title 6*content 6
    title 7*content 7
    title 8*content 8
    title 9*content 9
    把文件中数据导入到Blog表里面,代码如下:

      

      

      导入数据重复 解决办法

      如果你导入数据过多,导入时出错了,或者你手动停止了,导入了一部分,还有一部分没有导入。或者你再次运行上面的命令,你会发现数据重复了,怎么办呢?

     django.db.models 中还有一个函数叫 get_or_create() 有就获取过来,没有就创建,用它可以避免重复,但是速度可以会慢些,因为要先尝试获取,看看有没有

      只要把上面的 Blog.objects.create(title =title,content=content) 

      换成 Blog.objects.get_or_create(title=title,content=content)就可以了

      Model.objects.bulk_create() 更快更方便

      



      

     

  • 相关阅读:
    H3C-路由器密码恢复
    H3C-交换机密码恢复
    H3C-端口镜像
    [洛谷P4234]最小差值生成树
    [BZOJ4003]城池攻占
    [BZOJ1058]报表统计
    [BZOJ1584]Cleaning Up 打扫卫生
    [BZOJ3733]Iloczyn
    [HDU5709]Claris Loves Painting
    [BZOJ5109]大吉大利,晚上吃鸡!
  • 原文地址:https://www.cnblogs.com/shaosks/p/6145613.html
Copyright © 2011-2022 走看看