Как запросить поле Reverse related в сериализаторе django?
Я хочу получить результат запроса, который выглядит следующим образом в Django, используя отношения Serializer:
[
{
"id": 1,
"title": "Article 1",
"authors": ["John Doe", "Rose Mary"],
}
]
Что я пробовал, так это slugRelatedField, который выглядит следующим образом:
authors = serializers.SlugRelatedField(slug_field="file__folder__workspace", many=True, read_only=True)
Но это не удалось.
Моя модель Post
имеет поле file
и отношение "file__folder__workspace". Я хочу получить авторов, которые принадлежат к рабочему пространству.
Редактирование: Модель выглядит следующим образом:
class User(models.Model):
username = models.Charfield(max_length=20)
...
class Workspace(models.Model):
...
class Folder(models.Model):
workspace = models.ForeignKey(Workspace, on_delete=models.CASCADE)
class File(models.Model):
folder = models.ForeignKey(Folder, on_delete=models.CASCADE)
class Member(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
workspace = models.ForeignKey(Workspace, related_name="members", on_delete=models.CASCADE)
class Post(models.Model):
file = models.ForeignKey(File, on_delete=models.CASCADE)