Я просто новичок ie в python и django, и я совершенно заблудился в своей текущей проблеме, эта проблема как-то не нова для некоторых, надеясь получить какое-то руководство для меня, чтобы решить эту проблему Вопрос.
Я выполнил первый запрос, чтобы получить список значений внешнего ключа, и использовал al oop, чтобы передать отдельное значение, и использовал его в качестве параметра для второго запроса. Технически я выполнил второй запрос внутри итерации l oop. Затем я использовал и получил повторные значения моего второго запроса и передал его в self.paginate_queryset, чтобы я мог его сериализовать и выдать ответ на свой get_paginated_response.
В рамках наблюдения я напечатал все результат моего второго запроса внутри указанного l oop ранее, и он работал правильно, но когда я попытался запустить его на почтальоне, я заметил, что ответ дал только один результат из моей серии результатов на основе данного l oop .
Что именно мне нужно сделать, чтобы получить все необходимые результаты?
Не стесняйтесь также вносить любые предложения, если вы заметили что-то в моих кодах, которые нуждаются в улучшении.
Вот моя функция в views.py :
def get(self, request, *args, **kwargs):
global friend, request_queries
self.pagination_class = PageNumberPagination
friends = Friend.objects.filter(from_user=request.user.pk)
for friend in friends:
request_queries = GosamFriendProfile.objects.raw("""SELECT *
FROM gosam_friend_profile
INNER JOIN friendship_friend ON gosam_friend_profile.gosam_friends_id = friendship_friend.id
INNER JOIN profile ON gosam_friend_profile.profile_id = profile.id
WHERE profile.id = %s
ORDER BY profile.first_name""" % friend.to_user_id)
query_set = self.paginate_queryset(request_queries)
serializer = GosamFriendProfileSerializer(query_set, many=True)
return self.get_paginated_response(serializer.data)
сериализатор :
class GosamFriendProfileSerializer(serializers.ModelSerializer):
class Meta:
model = GosamFriendProfile
fields = '__all__'
depth = 1
модель GosamFriendProfile
# Junction Table for Gosam Friends and Profile
class GosamFriendProfile(models.Model):
gosam_friends = models.ForeignKey(Friend,
on_delete=models.CASCADE, null=False)
profile = models.ForeignKey(Profile, on_delete=models.CASCADE,
null=False)
class Meta:
db_table = 'gosam_friend_profile'