Reputation: 261
I have 3 serializers:
class abcSerializer(serializers.ModelSerializer):
created=Field(source='time')
result = Field(source='result')
class Meta:
model = abc
fields = ('created','result')
order_by = ['-created']
class defSerializer(serializers.ModelSerializer):
created=Field(source='time')
result = Field(source='result')
class Meta:
model = def
fields =('created','result')
order_by = ['-created']
class mainSerializer(serializers.ModelSerializer):
obj1 = abcSerializer()
obj2 = defSerializer()
class Meta:
model = main
fields = ('obj1','obj2')
In views.py:
data = main.objects.filter(id=111)
serializer = mainSerializer(data)
return Response(record)
In UI I am displaying the serialized data as like below:
created result
abc 1-9-2016 9:30:00 pass
def 2-9-2016 10:34:00 fail
I am getting the serialized data as below:
data = [{'created':'1-09-2106','result':'pass'},{'created':'2-09-2106','result':'fail'}]
I want to sort the data as per created field based on latest date.
created result
def 2-9-2016 9:30:00 fail
abc 1-9-2016 10:34:00 pass
Couldn't figure it out on how to sort on created on created field Any help will be appreciated!!
Upvotes: 2
Views: 9117
Reputation: 103
I think you want the order
in your model instead of the serializer.
class abcModel(models.Model):
created = models.DateTimeField(...)
result = ...
class Meta:
ordering = ['-created']
Upvotes: 4