Django, rest_framework - 'User' object is not iterable

у меня возникла проблема с получением данных из промежуточной таблицы, у которой одно поле было получено из django.contrib.auth.models, а для второго столбца я использовал свою базу данных.

models.py

from django.db import models
from django.contrib.auth.models import User


class UsersOfTown(models.Model):
    UsersID = models.ForeignKey(User, on_delete=models.CASCADE)
    TownsID = models.ForeignKey('towns.Town', on_delete=models.CASCADE) # моя база данных

Если зайти в django administration, то можно увидеть, что она создается (жаль что вместо id пользователя я вижу никнейм)

Django administration

Также я создал сериализацию для своей бд:

serializers.py

from django.contrib.auth.models import User
from rest_framework import serializers

from main.models import UsersOfTown

class UsersOfTownSerializer(serializers.ModelSerializer):
    UsersID = serializers.RelatedField(queryset=User.objects.all(), many=True)
    TownsID = serializers.RelatedField(queryset=Town.objects.all(), many=True)

    class Meta:
        model = UsersOfTown
        fields = "__all__"

И views.py файл:

@api_view(['GET', 'POST'])
def users_towns_list(request, format=None):
    if request.method == 'GET':
        town_users = UsersOfTown.objects.all()
        serializer = UsersOfTownSerializer(town_users, many=True)
        return Response(serializer.data)
    elif request.method == 'POST':
        serializer = UsersOfTownSerializer(data=request.data)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data, status=status.HTTP_201_CREATED)
        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)

Который вызывается, если я перехожу по адресу http://127.0.0.1:8000/api/user_list

Но в качестве результата я получаю ошибку: введите сюда описание изображения

Мне понятно, что я както не так обращаюсь к БД Users, а точней к ее дескриптору. Так как если я вместо Users буду использовать свою БД, то все будет работать. Ума не приложу, что я делаю не так. Как мне правильно обратиться к полю UsersID, которое связанно с БД Users?

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