Quantcast
Channel: django REST framework - limited queryset for nested ModelSerializer? - Stack Overflow
Viewing all articles
Browse latest Browse all 3

django REST framework - limited queryset for nested ModelSerializer?

$
0
0

I have a ModelSerializer, but by default it serializes all the objects in my model. I would like to limit this queryset to only the most recent 500 (as opposed to all 50 million). How do I do this?

What I have currently is the following:

class MyModelSerializer(serializers.ModelSerializer):    class Meta:        model = MyModel

The reason I don't think I can just specify the queryset in my viewset is that this is in fact the nested portion of another serializer.

models.py

class Container(models.Model):    size  = models.CharField(max_length=20)    shape = models.CharField(max_length=20)class Item(models.Model):    container = models.ForeignKey(Container, related_name='items')    name  = models.CharField(max_length=20)    color = models.CharField(max_length=20)

views.py

class ContainerViewSet(viewsets.ModelViewSet):    queryset = Container.objects.all()  # only a handful of containers    serializer_class = ContainerSerializer

serializers.py

class ItemSerializer(serializers.ModelSerializer):    class Meta:        model = Item        fields = ('name', 'color')class ContainerSerializer(serializers.ModelSerializer):    items = ItemSerializer(many=True)  # millions of items per container    class Meta:        model = Container        fields = ('size', 'shape', 'items')

Viewing all articles
Browse latest Browse all 3

Latest Images

Trending Articles





Latest Images