【发布时间】:2017-06-18 00:36:25
【问题描述】:
模型定义了一个文章和一个作者类。它们以多对多的关系联系在一起。这种关系是通过自定义中间表定义的:
# models.py
class Article(models.Model):
title = models.CharField(max_length=500)
authors = models.ManyToManyField(Author, through='AuthorOrder')
class Author(models.Model):
name = models.CharField(max_length=255)
class AuthorOrder(models.Model):
author = models.ForeignKey(Author)
article = models.ForeignKey(Article)
writing_order = models.IntegerField()
序列化应该返回一个像这样的 JSON:
#articles_json
{"fields":
{
"title": "A title",
"authors": [
{
"name":"Author 1",
"writing_order": 1
},
{
"name":"Author 2",
"writing_order": 2
}
}
}
}
我已经确定了两种解决方案。
- This one 建议单独序列化 AuthorOrder 字段。
- 第二个是use the Django Rest Framework。
我尝试了这两个但没有成功。你知道另一种方法吗?
【问题讨论】:
-
“使用 DRF”是正确的做法,但这不是解决方案。您希望序列化数据采用什么格式?
-
“但没有成功”将是您应该提供更多详细信息(您是如何做到的以及错误是什么)以使其成为真正的 SO 问题的地方。
标签: django serialization