2

모델장고/파이썬에서 모델에 필드로 기능을 추가

class A(SiteAwareModel): 

    name = models.CharField(max_length = 255, blank = False) 
    description = models.TextField(blank = True, null = True) 

    class Meta: 
     def key_count(self): 
      return B.objects.count(self) 

관리

class AAdmin(admin.ModelAdmin): 
    list_display = ('key_count') 
    list_filter = ('key_count') 

admin.site.register(A, AAdmin) 

문제 내가 가진 모델이 자체 필드 (이름, 설명). 또한 모델 A는 모델 B (외래 키 관계 없음)를 사용하여 키 수를 계산합니다.

관리자 패널의 key_count에 액세스하고 싶습니다. 내가 관리 의미 list_display에서 열을 볼 수 있지만 list_filter에서 그것을 사용하려고하면 오류가 throw됩니다.

'AAdmin.list_filter 1'은 (는) 필드를 참조하지 않는 'key_count'를 참조합니다.

최종 결과 내가 보여줄 것이다 필터를 만들고 싶어

key_count> 10 내가 이미 매니저를 통해 그 일을 시도

(성공없이) 할 것을

THIS 블로그 게시물

내가 원하지 않는 것

새로운 마이그레이션을 작성하여 모델을 변경하고 싶지 않습니다.

+0

이 질문은 django 1.3을위한 것입니까? "외래 키 관계가없는 경우"A와 B 사이의 관계는 무엇입니까? "B"필드를 보여줄 수 있습니까? – bsm

+0

django 1.3.4를 사용하고 있습니다. FK 관계는 2 개의 테이블을 포함하지 않습니다. 그리고 B는 name (CharField)과 type (IntegerField)라고하는 공통 필드를 포함합니다. –

답변

관련 문제