2012-06-20 8 views
6

게시물의 소유자가 User의 외래 키 인 블로그 게시물에 대한 모델이 있습니다. 이 모델을 사용하면 모든 사용자가 블로그 게시물을 소유 할 수 있습니다. 특정 그룹의 사용자 (Blogger라고 부름) 만 블로그 게시물 개체를 소유 할 수 있도록 변경하려고합니다. 이상적으로 그것은 관리자에게도 나타나야합니다. 즉, 블로그 포스트 관리자에서 '소유자'메뉴가 모든 사용자를 나열하면 '블로거'그룹에있는 사용자 만 나열해야합니다. 장고 1.3으로 어떻게 할 수 있습니까? 이처럼 외래 키 정의에서Django, 모델 외래 키 그룹으로 필터 사용자

답변

12

사용 limit_choices_to paramether :

author = models.ForeignKey("auth.User", limit_choices_to={'groups__name': "bloggers"}) 
+0

이 매우 도움이됩니다 감사합니다. 그러나 선택 사항을 여러 그룹으로 제한하려면 어떻게해야합니까? 예를 들어 '블로거'그룹 또는 '뷰어'그룹에서 사용자를 선택하고 싶습니다. – jgmao

+3

간단합니다. author = models.ForeignKey ("auth.User", limit_choices_to = { 'groups__name__in': [ "bloggers", "viewers"]}) –

+0

완벽한 !!! 나는 이것을 몇 시간 동안 찾고 있었다! –