首页 > 解决方案 > Django 非托管模型 - 从 JSON 数据构建查询集

问题描述

我想拥有不需要在数据库中作为表创建的模型,而是使用来自其他来源的数据,如 json 文件和其他模型对象。所以我使用的是非托管模型。此模型是动态创建的,如文档中所述

现在让我解释一下我想如何在这个non-managed model. 我有一个 json 文件,它定义了模型中应该包含哪些字段,我们称之为contact-model.json。此 json 文件中的字段映射到 django 字段并创建动态模型。这部分完成了。

{
    'model_name': 'Contact'
    'fields': {
        'name': 'CharField',
        'email': 'EmailField' 
    }
}

现在我有一个模型来存储与上面相关的所有数据contact-model.json。该模型的代码如下

class GenericAnswer(models.Model):
    answer = JSONField()
    model = CharField(default='Contact', max_length=30)

这个答案的价值是

{
    'name': 'Adil Malik',
    'email': 'sample@email.com'
}

我想要做的是,当我 fetch 时Contact.objects.all(),它应该GenericAnswer根据模型名称返回从中获取的对象,在这个 onctext 中,它是Contact

我可以做吗。如果是,请解释如何????

标签: pythonjsondjangodjango-modelsdjango-queryset

解决方案


推荐阅读