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();
相关推荐
喵手37 分钟前
Python爬虫实战:构建各地统计局数据发布板块的自动化索引爬虫(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集数据csv导出·采集各地统计局数据发布数据·统计局数据采集
天天爱吃肉82181 小时前
跟着创意天才周杰伦学新能源汽车研发测试!3年从工程师到领域专家的成长秘籍!
数据库·python·算法·分类·汽车
m0_715575342 小时前
使用PyTorch构建你的第一个神经网络
jvm·数据库·python
甄心爱学习2 小时前
【leetcode】判断平衡二叉树
python·算法·leetcode
深蓝电商API2 小时前
滑块验证码破解思路与常见绕过方法
爬虫·python
Ulyanov2 小时前
Pymunk物理引擎深度解析:从入门到实战的2D物理模拟全攻略
python·游戏开发·pygame·物理引擎·pymunk
sensen_kiss2 小时前
INT303 Coursework1 爬取影视网站数据(如何爬虫网站数据)
爬虫·python·学习
玄同7652 小时前
我的 Trae Skill 实践|使用 UV 工具一键搭建 Python 项目开发环境
开发语言·人工智能·python·langchain·uv·trae·vibe coding
Yorlen_Zhang2 小时前
Python Tkinter Text 控件完全指南:从基础编辑器到富文本应用
开发语言·python·c#
HAPPY酷3 小时前
C++ 和 Python 的“容器”对决:从万金油到核武器
开发语言·c++·python