python-0009-django对数据的增删改

shell

在虚拟环境中,可以使用python manage.py shell,打开命令行。在命令行中,所见即所得,相当于执行代码片段

对象

python 复制代码
from django.db import models

# Create your models here.

class BookInfo(models.Model):
    name = models.CharField(max_length=10,unique=True)
    pub_date = models.DateTimeField(null=True)
    read_count = models.IntegerField(default=0)
    commentcount = models.IntegerField(default=0)
    is_delete = models.BooleanField(default=False)

    class Meta:
        # 修改表的名称
        db_table = 'bookinfo'
        # 站点使用
        verbose_name = '书籍管理'


class PeopleInfo(models.Model):
    # 创建字典
    GENDER_CHOICE = (
        (0,'male'),
        (1,'female')
    )
    name = models.CharField(max_length=10, verbose_name='名称')
    gender = models.SmallIntegerField(choices=GENDER_CHOICE,default=0,verbose_name='性别')
    description = models.CharField(max_length=300,verbose_name='描述',null=True)
    is_delete = models.BooleanField(default=False,verbose_name='逻辑删除')
    book = models.ForeignKey(BookInfo,on_delete=models.CASCADE)

    def __str__(self):
        return self.name

    class Meta:
        # 修改表的名称
        db_table = 'peopleinfo'
        # 站点使用
        verbose_name = '读者信息'

创建一个python

创建crud-demo.py,用来写代码(方便),之后拷贝到shell里面

from book.models import BookInfo

python 复制代码
# 1.新增
# 方式1
book = BookInfo(
    name="完美世界",
    pub_date= "2019-01-01",
    read_count=10000,
    commentcount=1000000
);
# 手动保存
book.save()


# 方式2
BookInfo.objects.create(
    name="斗罗大陆",
    pub_date= "2018-10-01",
    read_count=2000,
    commentcount=200000
);

# 修改
# 方式1
book = BookInfo.objectt.get(id=3)
book.read_count = 300000
book.save()

# 方式2
column = BookInfo.objects.filter(id=6).update(read_count=6000)
print(column)

# 删除
# 方式1
BookInfo.objects.filter(id=6).delete();
# 方式2
BookInfo.objects.get(id=8).delete();
相关推荐
LuckyLay10 分钟前
1.1.2 运算符与表达式——AI教你学Django
python·django
学不会就看10 分钟前
Django--01基本请求与响应流程
后端·python·django
nbsaas-boot5 小时前
Java 正则表达式白皮书:语法详解、工程实践与常用表达式库
开发语言·python·mysql
仗剑_走天涯5 小时前
基于pytorch.nn模块实现线性模型
人工智能·pytorch·python·深度学习
chao_7895 小时前
二分查找篇——搜索旋转排序数组【LeetCode】两次二分查找
开发语言·数据结构·python·算法·leetcode
chao_78910 小时前
二分查找篇——搜索旋转排序数组【LeetCode】一次二分查找
数据结构·python·算法·leetcode·二分查找
烛阴10 小时前
Python装饰器解除:如何让被装饰的函数重获自由?
前端·python
noravinsc11 小时前
django 一个表中包括id和parentid,如何通过parentid找到全部父爷id
python·django·sqlite
ajassi200011 小时前
开源 python 应用 开发(三)python语法介绍
linux·python·开源·自动化
沉默媛11 小时前
如何安装python以及jupyter notebook
开发语言·python·jupyter