繁体   English   中英

Django REST框架将多个模型序列化为一个“时间轴”

[英]Django REST Framework Serialize Multiple Models into one “Timeline”

我有一个抽象的基础“ Post”模型,其中包含多个子模型,这些子模型具有自己的必填字段。

我已经将这些不同的帖子类型序列化为如下所示的内容

"timeline": {
    "text": [
        {
            "id": 1,
            "heading": "Yea",
            "text": "hello world",
            "render": "<p>\n  Yea\n</p>\n<p>\n  hello world\n</p>\n",
            "created_on": "2018-08-18T16:05:45.910124Z"
        }
    ],
    "video": [],
    "image": []
}

我想做的是能够按时间顺序在前端显示它们。

实现此目的的最佳方法是什么?

如果我对您的理解正确,则可以在将其发送到前端之前对整个内容进行排序。 我假设你有一个像上面list of dict

posts = [{'timeline: { ... }}, {'timeline: { ... }}, ...]

就像您的示例一样, 要对其进行原位排序

posts.sort(key=lambda t: t['timeline']['text'][0]['created_on'])

这将使所有对象按时间顺序排列。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM