1、更新单个数据的步骤
- 查:通过get()方法得到要修改的对象
- 改:通过对象.属性的按时修改数据
- 保存:通过对象的save()方法保存数据
实例:
>>> from app1.models import Person
>>> p1=Person.objects.get(id=1)
>>> p1
<Person: 姓名:zhangsan,年龄:30,性别:man>
>>> p1.age=28
>>> p1.save()
>>> p
>>> p1
<Person: 姓名:zhangsan,年龄:28,性别:man>
>>>
从数据库后台查询数据,可以发现更新数据已生效
2、批量数据的更新方法
- 直接调用QuerySet的update(属性=值)即可实现批量修改
为演示下面实例,这里先通过如下操作,增加几条数据:
>>> p3=Person(name="wangwu",age=25,sex="man")
>>> p3.save()
>>> p4=Person(name="tom",age=10,sex="man")
>>> p4.save()
>>> p5=Person(name="Jack",age=12,sex="man")
>>> p5.save()
在数据库中查询如下:
实例:将id大于3的所有数据的sex设置为woman
操作如下:>>> persons=Person.objects.filter(id__gt=3)
>>> persons.update(sex="woman")
2
>>>
从数据库后台插叙数据可以看到批量更新已经生效
实例: 将所有人员信息的年龄设置为20,性别设置为man
操作如下:
>>> persons=Person.objects.all()
>>> persons.update(sex="man",age=20)
5
>>>
从数据库后台可以查询到数据已经发生变化,如下: