2012-05-11 2 views
2

어떻게 관계에 대한 관리자를 재정의 할 수 있습니까? 예 :모델에 대한 django의 RelatedManager 덮어 쓰기

user.entry_set # django.db.models.fields.related.RelatedManager 

하지만 내 관리자가 필요합니다. 이 코드를 사용해도 작동하지 않습니다.

class EntryManager(models.Manager): 
    use_for_related_fields = True 

감사합니다.

+1

호기심 때문에 왜 사용자 정의 관리자가 필요하다고 생각하십니까? –

+0

'use_for_related_fields'가 왜 작동하지 않습니까? 이것이 * for *의 기능입니다. 작동하지 않으면 코드에 엉망이됩니다. * 항상 코드를 게시하십시오. * –

+0

@ChrisPratt 실제로는 OneToOneField 관계 ([ticket] (https://code.djangoproject.com/ticket/14891))에서만 작동합니다. – DrTyrsa

답변

-1

작업을 유지하고 이해하는 것이 매우 어려울 수있는 해킹 코드가 필요합니다 (가능한 경우).

어떨까요?

class EntryManager(models.Manager): 
    def by_user(self, user): 
     # do anything you want 

# usage 
Entry.objects.by_user(user=user)