我正在浏览Django的官方民意调查教程。我能够按照这些步骤进行操作,并且能够获得结果。但我无法理解模型的结构
在shell中使用API(民意调查教程第1部分)时,可以使用Polls.objects.all()列出对象现在轮询是一个继承自models.Model的类。但是对象呢?
使用Poll.objects列出对象,然后我们可以使用all方法。
那究竟什么是Poll.objects(其他的一个实例?)抱歉,如果这听起来真的很蠢,我对这些东西都是新手。
答案 0 :(得分:3)
Poll.objects
在Django中是一个特殊的东西叫Manager
:
Manager是数据库查询操作的接口 提供给Django模型。每个型号至少存在一个Manager 在Django应用程序中。
名称objects
只是Django遵循的惯例/标准。您可以轻松更改它:
from django.db import models
class MyModel(models.Model):
whatever = models.Manager()
您还可以定义自定义模型管理器方法。通常,它实际上是提取和重用与数据库模型交互相关的功能的好方法。例如: