Jay*_*odi 3 python django django-mptt django-rest-framework
我使用django-mptt存储类别层次结构,我需要以下面的格式序列化所有类别数据.
{
"id": 1,
"name": "FOOD"
"children": [
{
"id": 6,
"name": "PIZZA"
},
{
"id": 7,
"name": "BURGER"
}
],
},
{
"id": 2,
"name": "ALCOHOL"
"children": [
{
"id": 8,
"name": "WINE"
},
{
"id": 9,
"name": "VODKA"
}
],
},
}
Run Code Online (Sandbox Code Playgroud)
我正在使用django REST框架ModelViewset和序列化程序.怎么办?
这反应了一年为时已晚,但对于其他人的利益,使用RecursiveField从djangorestframework递归包.
我能够这样做:
class MyModelRecursiveSerializer(serializers.Serializer):
# your other fields
children = serializers.ListField(read_only=True, source='your_get_children_method', child=RecursiveField())
Run Code Online (Sandbox Code Playgroud)
请注意,这可能很昂贵,因此您可能只希望将其用于其条目不经常更改并缓存结果的模型.
| 归档时间: |
|
| 查看次数: |
2919 次 |
| 最近记录: |