Django的模型层——2模型实例

1. 类的属性

  • objects:是Manager类型的对象,用于与数据库进行交互

  • 当定义模型类时没有指定管理器,则Django会为模型类提供一个名为objects的管理器

  • 支持明确指定模型类的管理器

    复制代码
    class BookInfo(models.Model):
      ...
      books = models.Manager()
  • 当为模型类指定管理器后,django不再为模型类生成名为objects的默认管理器

2. 创建对象

  • 当创建对象时,django不会对数据库进行读写操作

  • 调用save()方法才与数据库交互,将对象保存到数据库中

  • 使用关键字参数构造模型对象很麻烦,推荐使用下面的两种之式

  • 说明:init方法已经在基类models.Model中使用,在自定义模型中无法使用,

3. 实例的属性

  • DoesNotExist:在进行单个查询时,模型的对象不存在时会引发此异常,结合try/except使用

4. 实例的方法

  • __str__(self):重写object方法,此方法在将对象转换成字符串时会被调用

  • save():将模型对象保存到数据表中

  • delete():将模型对象从数据表中删除

相关推荐
不如语冰16 分钟前
AI大模型入门-pytorch-张量2 tensor创建
python
NPE~28 分钟前
[AI]Agent开发——ADK框架使用
人工智能·python·ai·教程·adk·agent开发
矮个史蒂芬30 分钟前
统计verilog .v文件中output 的bit数
python
gwf2161 小时前
磨损均衡算法(Wear Leveling)——SSD如何让每块闪存“公平退休“?
运维·数据库·人工智能·python·嵌入式硬件·算法·智能硬件
MemoleCard1 小时前
深度解析Java当中的锁机制
后端
wear工程师1 小时前
ThreadLocal 在线程池里为什么会串数据:别只会答内存泄漏
java·后端
爱吃提升1 小时前
python 分布式爬虫、爬虫合规与综合实战项目
分布式·爬虫·python
审小匠OpenCPAi1 小时前
银行流水核查怎么自动化?单边匹配、双向勾稽与图聚类异常检测的工程对比
java·前端·人工智能·python·审计
whyfail2 小时前
前端学 Spring Boot(2):一次点击,如何穿过整个后端?
前端·spring boot·后端