2013-03-17 13 views
7

クエリーセットがその親のサブセットであるプロキシモデルがあります。しかし、私がそれを呼び出すと、代わりに親のオブジェクトが返されます。Model Managerのクエリーセットはフィルタリングされていません

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)) 

どんな助けも大歓迎です。私はここで何が欠けているのか正確には分からない。

答えて

14

おそらくタイプミス:get_querysetget_query_setである必要があります。何も上書きしていないはずです。

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

ありがとうございました。タイプミスのために頭を叩くようなものはありません。 – chirinosky

6

ないタイプミス:1.5 documentation私はdevのバージョンの最近の変化があったと仮定しget_query_set使用するのに対し、dev documentationはget_querysetを使用しています。

+0

Wowは他のものを動作させるために私のdjangoをダウングレードしました。 –

関連する問題