默认情况下,Django 访问关联对象(即 choice.question
)时使用 Model._base_manager
管理器类的实例,而不是关联对象的 _default_manager
。这是因为 Django 要检索那些可能被默认管理器筛选掉(所以无法访问)的关联对象。
若基本管理器类 (django.db.models.Manager
) 无法满足需求,你可以通过设置 Meta.base_manager_name
告诉 Django 使用哪个类。
在关联模型上执行查询时不会使用基础管理器,或者当访问一对多或多对多关系。例如,来自教程的模型 Question
有个 deleted
字段,还有一个基础管理器,用于过滤掉 deleted=True
的实例。由 Choice.objects.filter(question__name__startswith="What")
返回的查询结果集会包含关联至已删除的问题的选项。
get_queryset()
来过滤任何rows
。如果你这么做,Django 会返回不完整的结果。模型当中最重要的属性是 Manager。它是 Django 模型和数据库查询操作之间的接口,并且它被用作从数据库当中 获取实例,...
自动测试化是什么?测试代码,是用来检查你的代码能否正常运行的程序。测试在不同的层次中都存在。有些测试只关注某个很小的细节...
如果你只是想测试异步视图的输出,标准测试客户端将在自己的异步循环中运行它们,而不需要你做任何额外的工作。但是,如果你想为...
Java Swing教程 -Java Swing字体java.awt.Font类的一个对象表示Java程序中的字体。要创建Font类的对象,请使用其构造函数。要将...
MyBatis-Plus 条件构造器-AbstractWrapperne(R column, Object val)ne(boolean condition, R column, Object val)不等于例:ne(...