44from vacancy .filters import project_id_filter
55
66
7+ def user_id_filter (queryset , name , value ):
8+ return queryset .filter (
9+ ** {
10+ "user_id" : value [0 ],
11+ }
12+ )
13+
14+
715class InviteFilter (filters .FilterSet ):
816 """Filter for Invite
917
@@ -21,17 +29,20 @@ class InviteFilter(filters.FilterSet):
2129 def __init__ (self , * args , ** kwargs ):
2230 """if user filter is not passed, default to request.user"""
2331 super ().__init__ (* args , ** kwargs )
24- if self .data .get ("user " ) is None :
32+ if self .data .get ("user_id " ) is None :
2533 # default filtering by current user
2634 self .data = dict (self .data )
2735 self .data ["user" ] = kwargs .get ("request" ).user .id
36+
37+ # fixme: if there is no filter, handler may return too much data
2838 # if user == "any", remove the filter
29- if self .data .get ("user " ) == "any" :
39+ if self .data .get ("user_id " ) == "any" :
3040 self .data = dict (self .data )
31- self .data .pop ("user " )
41+ self .data .pop ("user_id " )
3242
3343 project = filters .Filter (method = project_id_filter )
44+ user_id = filters .Filter (method = user_id_filter )
3445
3546 class Meta :
3647 model = Invite
37- fields = ("project" , "user " )
48+ fields = ("project" , "user_id " )
0 commit comments