'Users instead id , Django(wagtail) , Vue
I want to make a class that returns usename of all users who liked the post. Users will be sent to Vue. currently the code returns in Vue consol log - 0: {likex: 'ideas.IdeaPage.None'}
models.py
class IdeaPage(Page):
intro = models.CharField(max_length=250)
body = RichTextField()
tags = models.CharField(max_length=100, null=True, blank=True)
likex = models.ManyToManyField(User, related_name="likex", blank=True)
serializer.py
class LikeSerializer(serializers.ModelSerializer):
likex = serializers.CharField()
class Meta:
model = IdeaPage
fields = ["likex"]
views.py
@authentication_classes([authentication.TokenAuthentication])
@permission_classes([permissions.IsAuthenticated])
class Like(APIView):
def get(self, request, id, format=None):
ideasl = IdeaPage.objects.get(id=id)
likepost = IdeaPage.objects.get(id=id)
likepostZ = likepost.likex.all()
if request.user in likepost.likex.get_queryset():
likepost.likex.remove(request.user)
else:
likepost.likex.add(request.user)
serializer = LikeSerializer(likepostZ, many=True)
return Response(serializer.data)
why code return likex: 'ideas.IdeaPage.None'?
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
