2017-12-12 32 views
1

ManyToMany 필드에 필터를 추가하려고합니다.Django Many To Filter with 필터

모델 User와 모델 알림이 있습니다. 알림은 ManyToMany 필드에 의해 사용자와 연결됩니다. 예를 들어 불가리아에있는 모든 사용자에게 알림을 보내거나 사전 정의되지 않은 사용자 모델의 다른 속성을 기반으로 필터를 필터링 할 수 있기를 원합니다 (즉, 알림을 작성한 사람은 필터 생성 전을 알지 못합니다. 들).

사용자 알림 관리 페이지에 raw_id_fields을 사용해 보았습니다. 그런 다음 모델의 필터를 기반으로 추가하려는 사용자를 선택하고 필터링 할 수 있지만 한 번에 한 명의 사용자 만 선택할 수 있습니다. 예를 들어 10k 사용자를 추가해야하는 경우 이는 매우 불편할 수 있습니다. enter image description here raw_id_field을 사용하고 동시에 여러 인스턴스를 선택하거나 filter_horizontal에 필드 필터링을 추가하거나 잘 모르겠습니다. 당신이 사용자에 located 속성으로 알림을 필터링 할 것

list_filter = ['user__located'] 

:

+1

지역 또는 다른 필터링 기준에 따라 여러 사용자에게 알림을 보내려고하십니까? 죄송합니다. 질문이 명확하지 않습니다. – prakash09

+0

그래, 그게 내가하려는 일이지만, 나는 이것에 대한 문제를 해결하기위한 일종의 발견했다. –

+0

사용자 모델 페이지에 사용자 지정 작업을 추가했습니다 - 선택한 모든 사용자가 many2many 관계에 연결되어있는 빈 알림을 만든 다음 알림 모델 페이지로 이동하면 알림의 다른 속성을 채우고 저장합니다. 그것. 나는 save2nany 관계에있는 모든 사용자에게 소켓을 통해 메시지를 보내야한다는 별도의 논리를 가지고있다. –

답변

0

나는 무엇을 당신이 찾고있는 것은이 믿습니다.

+0

쿨! list_filter 옵션에 대해 읽는 중이었습니다. 건배! :) –