Я использую DRF. У меня есть две модели. Level and Question. Когда я делаю GET запрос к 'localhost:8000/api/questions/' я получаю "level: (тут отображается id, но хотелось бы получать название level'a).
Вот:
{
"en": "she is a girl",
"ru": "она девочка",
"level": 1
},
{
"en": "hi friend",
"ru": "привет друг",
"level": 2
},
models.py
from django.db import models
class Level(models.Model):
level = models.CharField(max_length=50, unique=True)
slug = models.SlugField(max_length=50, unique=True)
def __str__(self):
return self.level
class Question(models.Model):
en = models.CharField(max_length=255)
ru = models.CharField(max_length=255)
btn = models.TextField()
level = models.ForeignKey(Level, related_name='question', on_delete=models.CASCADE)
def __str__(self):
return self.en
serializers.py
from . models import Level, Question
from rest_framework import serializers
class LevelSerializer(serializers.ModelSerializer):
question = serializers.StringRelatedField(many=True)
class Meta:
model = Level
fields = ('level', 'question',)
class QuestionSerializer(serializers.ModelSerializer):
class Meta:
model = Question
fields = ('en', 'ru', 'level')
Как я могу получить названия моих левелов в GET запросе вместо их id ? Тоесть чтоб было примерно вот так:
{
"en": "she is a girl",
"ru": "она девочка",
"level": "number one"
},
{
"en": "hi friend",
"ru": "привет друг",
"level": "number two"
},