django 模型的对象声明在哪里?



在 django 文档中,它说我们可以检索数据输入,如下所示

entry = Entry.objects.get(pk=1)

条目是models.py中的一个模型类。我试图找到对象的声明,但我在manager.py中找不到它的声明,只知道它是管理器的实例。那么,对象的声明在哪里?它是否表示一组条目实例?

当你定义模型时,你从django.db.models模块扩展模型类。 它将在对象属性中提供默认模型管理器。

如果你想定义自定义模型管理器,你可以通过子类化django.db.models.Manager类来实现。 查看文档如何做到这一点:https://docs.djangoproject.com/en/1.11/topics/db/managers/

如果要对数据集合进行操作,请将方法添加到自定义模型管理器。如果使用单行进行操作,请将方法添加到模型中。

它在ModelBase中定义,ModelBase是模型类的元类。请参阅 https://github.com/django/django/blob/master/django/db/models/base.py#L360

最新更新