在 Graphene Django 中查询多个模型

Query multiple models in Graphene Django

我在 Django 中有多个名为 model1model2model3 的模型。 每个模型都有相同的字段,字段 id 是主键。 我想使用 GraphQL 查询这个数据库。查询结构应如下所示。

query{
      pod(model: "model1",id: "1")
        {
           id
           data1
           data2
        }
     }

这应该让我从模型 1 中获得 id 1 的对象。 我如何使用石墨烯在 Django 中执行此操作?

为您的模型创建一个地图,以及您希望如何从 graphql 查询访问它。这样做:

def resolve_pod(self, root, info, model, id):
    model_map = {'model1': Model1, 'model2': Model2, 'model3': Model3}
    if model in model_map.keys():
        return model_map[model].objects.get(id=1)
    return None