我有一个代理模型,其查询集是其父级的子集。但是,当我调用它时,将返回父对象。

Model Manager :

class NewRequestsManager(models.Manager):
    def get_queryset(self):
        return super(NewRequestsManager, self).get_queryset().filter(is_scoped=0)

代理模型:
class NewRequests(Engagement):
    objects = NewRequestsManager()

    class Meta:
        proxy = True
        app_label = 'myapp'
        verbose_name = 'New Request'

查看:
def list(request):
    new_requests = NewRequests.objects.all()
    c = RequestContext(request, {
            'cl': new_requests,
    })
    t = loader.get_template('queue.html')
    return HttpResponse(t.render(c))

任何帮助深表感谢。我不确定我在这里想念的是什么。

最佳答案

可能只是拼写错误:get_queryset应该是get_query_set,因此您不会覆盖任何内容。

class NewRequestsManager(models.Manager):
    def get_query_set(self):
        return super(NewRequestsManager, self).get_query_set().filter(is_scoped=0)

关于django - 模型管理器查询集未过滤,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15457780/

10-11 16:42