I am having trouble getting data of two models from a single view in Django rest framework. Here is what I have done so far, but I am not sure how can I get the data from two models using single view.
urlpatterns = [
path('users/<int:id>/', GenericAPIView.as_view()),
path('users/', GenericAPIView.as_view()),
]
# User Serializer
class userSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = '__all__'
# usersdata serializer
class userdataSerializer(serializers.ModelSerializer):
class Meta:
model = UserData
fields = '__all__'
this is my views.py
class GenericAPIView(generics.GenericAPIView, mixins.ListModelMixin, mixins.CreateModelMixin, mixins.RetrieveModelMixin,
mixins.UpdateModelMixin):
serializer_class = userdataSerializer, userSerializer
queryset = UserData.objects.all()
lookup_field = 'id'
def get(self, request, id=None):
if id:
return self.retrieve(request)
else:
return self.list(request)
def post(self, request):
return self.create(request)
def put(self, request, id=None):
return self.update(request, id)