[Fixed]-Django-rest serializer returning code instead of list of objects

1👍

Your problem is in views.py, you are not using actually the serializer at all. You are just filter some data and return whatever values you get from database (hence the ids only).

I suggest you to check Generic Class Based Views

from myapp.models import MyObject
from myapp.serializers import MyObjectSerializer
from rest_framework import generics

class MyObjectListAPIView(generics.ListAPIView):
    queryset = MyObject.objects.all()
    serializer_class = MyObjectSerializer

Also if you need any filtering check documentation here. Basically you can filter by fields from model with this snippet

filter_backends = (filters.DjangoFilterBackend,)
filter_fields = ('field1', 'field2')

PS: You can do the view as normal function, but you have to handle yourself filtering/serialization part, the code may not look as cleaner as you get with class based views.

Leave a comment