class UserSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = ('email', 'name', 'avatar')
read_only_fields = ('email',)
class AdminUserSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = ('email', 'name', 'avatar', 'login_attempts')
read_only_fields = ('email',)
class UserProfileSerializer(serializers.ModelSerializer):
class Meta:
model = UserProfile
fields = ('name', 'avatar')
class UserSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = ('email', 'login_attempts',)
read_only_fields = ('email',)
class ToDoViewSet(viewsets.ModelViewSet):
model = User
def get_queryset(self):
qs = super(ToDoViewSet, self).get_queryset()
if self.request.DATA.get('completed'):
return qs.filter(completed=True)
return qs
# filters.py
class ToDoFilter(django_filters.FilterSet):
class Meta:
model = ToDo
fields = ('completed',)
# views.py
class ToDoViewSet(viewsets.ModelViewSet):
model = User
filter_class = ToDoFilter
# filters.py
class ActiveFilter(django_filters.BooleanFilter):
def filter(self, qs, value):
if value:
...
return qs
class ToDoFilter(django_filters.FilterSet):
active = ActiveFilter()
class Meta:
model = ToDo
fields = ('active',)
# views.py
class ToDoViewSet(viewsets.ModelViewSet):
model = User
filter_class = ToDoFilter