如何使用文件和字符串(嵌套+数组)形式数据请求创建对象?

时间:2019-02-17 18:19:28

标签: django django-rest-framework postman

我正在尝试用drf处理form-data

我处理过其他情况-单个文件,多个文件(仅包含FILES),等等。

但是现在我正在尝试发送带有数据和其他内容的多个对象。

这是我带有文件的示例数据(在单元测试中)

data = {
    'title': 'test_title',
    "indicators": [
        {
            "brief": "test brief",
            "content": "test content",
            "chart": open('mediafiles/thumb_orgfund.jpg'),
        },
        {
            "brief": "test brief 2",
            "content": "test content 2",
            "chart": open('mediafiles/thumb_orgfund.jpg'),
        }
    ]
}

与其他测试不同,我无法使用form-data处理这些数据,而必须使用这些数组创建指标对象。

此外,很难用form-data向邮递员发送此类请求-我无法使用嵌套+数组进行请求。

如果我尝试使用request.FILES获取文件,则无法将它们与每个对象匹配。另外,由于MultiDict文件,我无法使用bulk_create甚至create导致数据(request.data)都不是有效的json类型。

有什么方法可以保存文件并一次str吗?

谢谢您的建议。

0 个答案:

没有答案