2012-02-11 3 views
0

사용 외국 필드list_filter 장고 관리자 페이지의 list_filter에서

가정하자 내가 모델

이 난 장고 관리자에서 필드 1에 대한 클라이언트 모델에 대한 필터를 구현할 수있는 방법을 이제
class Company(): 
     name varchar(50) 
     field1 varchar(50) 

    class Client() 
      name varchar(50) 
      company ForeignKey(Company) 

페이지

나는 list_filter = [ 'company_ 필드 1', '기업 _name']을 시도했지만 작동하지 않았다. 어떤 해결책?

저는 장고 1.2 버전을 사용하고 있습니다.

미리 감사드립니다.

답변

5

장고 1.2에서는 수행 할 수 없습니다.

1.3부터는 표준`relatedModel__field '구문을 사용할 수 있습니다 (the docs 참조). 이 작업을하려면 두 개의 밑줄을 사용해야합니다. 현재 dev version 당신은 훨씬 더 복잡한 일이 pratically 당신이 좋아하는 것을 할 수 있습니다 SimpleListFilter의 서브 클래스를 사용하는 것으로 수에서

, 나는 사용한 적이 주위에) 장고 1.2

+0

답변 해 주셔서 감사합니다. – Asif

4

는 해키 일이 이런 종류의 일에.

데이터베이스에서 외래 키 관계가있는 두 테이블의 조인에 대한 뷰를 정의하십시오. 그런 다음 장고가 실제 테이블 대신보기를 사용하게하십시오. 뷰에 트리거를 넣어 데이터베이스 쓰기를 올바른 테이블로 리디렉션하십시오.