Here is my model and serializers classes:
class Employee(models.Model):
name = models.CharField(max_length=255)
manager = models.ForeignKey('self', on_delete=models.RESTRICT, related_name='employee_manager')
score = models.FloatField()
updator = models.ForeignKey(User, on_delete=models.RESTRICT, related_name='employee_updator')
class EmployeeSerializer(serializers.ModelSerializer):
class Meta:
model = Employee
fields = '__all__'
Currently I'm getting this response:
[
{
"id":1,
"name": "David",
"manager": null,
"score": 18.7,
"updator": 15
},
{
"id":2,
"name": "Sara",
"manager": 1,
"score": 12.3,
"updator": 15
}
]
But I need to have 'id' and 'name' of manager like this:
[
{
"id":1,
"name": "David",
"manager": null,
"score": 18.7,
"updator": 15
},
{
"id":2,
"name": "Sara",
"manager": {
"id":1,
"name":"David"
},
"score": 12.3,
"updator": 15
}
]
I tried adding 'depth=1' to my serializer but it also returns 'employee_updator' details that I'm not interested in.
Any help would be appreciated. Thanks.