QuerySet не фильтрует по пользователю

Итак, мой код написан на Django backend и React frontend.

По какой-то причине объекты (в данном случае крысы) не фильтруются по владельцу/пользователю. Я не хочу делать разрешения - любой должен иметь доступ к чужой крысе, но в данном конкретном списке пользователь должен видеть только тех крыс, которые принадлежат ему.

Запуск других фильтров работает, например, по дню рождения. Но когда я пробую фильтровать по пользователю, крысы не появляются. Ошибка также не возникает. Что может быть не так?

Сериализатор объектов:

class RatSerializer(FlexFieldsModelSerializer):
    user         = serializers.CharField()
    body_colour  = BodyColourSerializer()
    eye_colour   = EyeColourSerializer()
    image        = ImageSerializer()

    class Meta:
        model = rat

Просмотров:

   class ratViewset(FlexFieldsMixin):
         serializer_class = RatSerializer
         def get_queryset(self):
            userid = self.request.id
            return rat.objects.filter(user = userid)

Пользовательский сериализатор:

class UserSerializer(serializers.ModelSerializer):
password = serializers.CharField(write_only=True)

class Meta:
    model = User
    fields = ('id', 'username', 'password')

И вывод JSON для пользователя:

{
        "id": 13,
        "username": "new"
    }

В выводе JSON для объекта/крысы четко указано, какому пользователю он принадлежит. Так почему же фильтр не работает?

Если вы используете: request.user

Ваш пользователь не аутентифицирован.

Поэтому он вернет все.

Убедитесь, что вы вошли в систему, и попробуйте еще раз

Вернуться на верх