python - 没有 Django 模型的 Graphite 烯 Django?

标签 python django django-models graphene-python

我已经成功地使用 Graphene-Django 成功构建了几个 GraphQL 调用。在所有这些情况下,我全部或部分填充了 Django 模型,然后返回了我填充的记录。

现在我想返回一些我不想存储在 Django 模型中的数据。这可能与 Graphite 烯有关吗?

罗伯特

最佳答案

Robert_LY 在评论中完美地回答了他自己的问题,我只想扩展他的解决方案。

我的无数据库模型 WordForm 是自动生成的,无需将其存储在数据库中。我将其定义为 Django 模型,如下所示:

from django.db import models
class WordForm(models.Model):
    value = models.CharField(max_length=100)
    attributes = models.CharField(max_length=100)

在模式中,我像这样定义节点和查询:
class WordFormNode(DjangoObjectType):
    class Meta:
        model = WordForm
        interfaces = (relay.Node, )

class Query(AbstractType):
    word_forms = List(WordFormNode,query=String(),some_id=String())

    def resolve_word_forms(self, args, context, info):
        query= args['query']
        some_id = from_global_id(args['some_id'])[1]
        word_forms = []
        # some logic to make WordForm objects with
        # WordForm(value=value,attributes=attributes),
        # then append them to list word_forms
        return word_forms

您可以将任意数量的参数传递给 List 并在 resolve_word_forms 中访问它们。

关于python - 没有 Django 模型的 Graphite 烯 Django?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45789617/

相关文章:

python - Django NoReverseMatch URL 模式

Django:如何获得包含模型所有对象的管理器?

Django模型字段顺序

python - 删除列表中所有非质数元素

python - 加载 Django fixture : IntegrityError: (1062, "Duplicate entry ' 4' for key ' user_id'") 时出现问题

python - 如何获取 DateField 的标签?

python - .order_by() 没有按应有的方式/我期望的方式工作

Django:在内存中建立关系而不保存到数据库

Python:如何检查字符串的编码并在不同的地方插入空格?

Python 和 Hadoop - 使用 python 直接获取数据并将其写入 hdfs?