zoukankan      html  css  js  c++  java
  • Django--模型管理器

    参考https://blog.csdn.net/qq_34788903/article/details/87889451

    可参考视频 :  https://www.bilibili.com/video/av57516522/?p=20

    BookInfo.objects.all()的这个objects是Django自动生成的管理器对象, 通过这个管理器可以实现对数据的查询

    from django.db import models
    
    
    # Create your models here.
    
    class BookInfoManger(models.Model):
        # 模型管理器类
        def all(self):# 改变查询结果的结果集
            books = super().all()
            books = books.fliter(isDelete=False)
            return books
            # 调用父类的all方法获取所有数据,对数据进行过滤,返回books
    
        # 操作模型类对应的数据表(增删改查)
        def create_book(self,btitle,bpub_date):
            # book=BookInfo()这样写一缺点就是下面的BookInfo类名改变之后就会出错,
            #应该下面这样
            model_class = self.model  # 获取self所在的模型类
            book = model_class
            book.btitle=btitle
            book.bpub_date=bpub_date
            book.save()
            return book
    
    
    # 一类
    class BookInfo(models.Model):
        btitle = models.CharField(max_length=20)  # 图书名称
        bpub_date = models.DateField()  # 出版日期
        bread = models.IntegerField(default=0)  # 阅读量,默认为0
        bcomment = models.IntegerField(default=0)  # 评论量
        isDlete = models.BooleanField(default=False)  # 逻辑删除,默认不删除
        book = models.Manager()  # 自定义一个Manager对象
    
        # 自定义一个BookinfoManger类的对象,这是关联起模型类和模型管理器类的一句代码
        objects = BookInfoManger()
    
       
    
  • 相关阅读:
    其实Unix很简单
    路由器硬件和操作系统软件关系之我见
    80后的我们
    虚拟机虚拟网卡作用
    [转]Cisco小失误,大麻烦
    DDWRT让我们的无线路由器用上Linux
    2011年全国大学生电子设计竞赛试题来自官网
    太网帧结构详解
    TCP/IP网络编程之四书五经
    四种以太网数据包详解
  • 原文地址:https://www.cnblogs.com/wangyue0925/p/11344078.html
Copyright © 2011-2022 走看看