django model:
class Poll(models.Model):
name= models.CharField(max_length=255, unique=True, verbose_name='name')
description = models.CharField(max_length=255, unique=True, verbose_name='description')
新增数据:
data_dict = {'name': 'foo', 'description': 'bar'}
# 1
p = Poll(**data_dict)
p.save()
# 2
p = Poll(name='foo', description='bar')
p.save()
# 3
Poll.objects.create(name='foo', description='bar')
# 4
Poll.objects.create(**data_dict)
另外,可以重写Poll模块的save()方法,增加自定义数据处理,处理完调用super().save()
更新数据:
参考掘金上面这位同学的文章,写的很清晰:https://juejin.im/post/5b588b656fb9a04fba6e8681#heading-0
附注:
当然数据库的新增和更新操作也可以使用原生的sql语句, 摘段别人的代码记录一下(https://blog.youkuaiyun.com/You_are_my_dream/article/details/53037680)
from django.db import connection
cursor = connection.cursor()
cursor.execute("insert into blog_author(name) values('韩寒')")
cursor.execute("update blog_author set name = '郭敬明' where name = '韩寒' ")
cursor.execute("delete from blog_author where name = '郭敬明'")
cursor.execute('select * from blog_author')
# 一条一条的取数据
raw = cursor.fetchone()
# 取出所有数据,以元组的形式返
cursor.fetchall()