2013-10-25 1 views
1

django-filterdjango-guardian이 함께 작동하지 않습니다. 필요한 것은 ItemsFilterView이며 사용자가 볼 수있는 권한이있는 모든 항목을 나열하고 필터링 할 수 있습니다. 아래는 내 코드 중 가장 관련성이 높은 부분입니다. 요청시 더 추가 할 수 있습니다. django-guardian과 함께 django-filter 사용

# filters.py 
class ItemFilterSet(FilterSet): 
    class Meta: 
     model = Item 

# views.py 
class ItemFilterView(FilterView): 
    filterset_class = ItemFilterSet 

# urls.py 
url(r'^items/$', ItemFilterView.as_view(), name='item_list'), 

나는 get_objects_for_user(request.user, 'view_item')django-filter 그들에 그 손을 얻기 전에 만 허용 항목에의 검색어를 좁히기 위해 사용되어야한다 생각하지만, 나는 그것을 추가 할 수있는 적절한 장소를 찾을 수 없습니다.

# views.py 
class ItemFilterView(FilterView): 
    filterset_class = ItemFilterSet 

    def get_queryset(self): 
     qs = Item.objects.all() 
     qs = get_objects_for_user(self.request.user, 'view_item', qs) 
     return qs 
:

답변

1

나는 로직을 추가 할 올바른 위치를 찾을