I have the following models:
class ContentUpload(BaseModel):
...
status = models.ForeignKey(CourseStatus, on_delete=models.CASCADE, related_name="content_status", null=True, blank = True)
class CourseStatus(BaseModel):
status_name = models.CharField(max_length=250)
slug = models.SlugField()
def save(self, *args, **kwargs):
self.slug = slugify(self.status_name)
super(CourseStatus, self).save(*args, **kwargs)
def __str__(self):
return str(self.status_name)
The following serializers:
class CourseStatusListSerializers(serializers.ModelSerializer):
class Meta:
model = CourseStatus
fields = ('id', 'status_name', 'slug')
def get_status(self, obj):
return CourseStatusListSerializers(obj.status, context={"request": self.context['request']}).data
When the ContentUpload.status is None it returns the following:
"status":{"status_name":"","slug":""}
My question is that how can I do it to give back an empty object? What is your best practice for this?
"status":{}