访问Graphene/Graphql中的数据库ID

2024-04-18 16:28:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下查询,用于筛选具有显示ID的商店(使用sqlalchemy):

{
  shop(id: "mydevappstore") {
    id
  }
}

生成以下结果。我希望id与上述相同:

{
  "data": {
    "shop": {
      "id": "U2hvcDpteWRldmFwcHN0b3Jl"
    }
  }
}

我不明白为什么会发生这种情况(同样在石墨烯教程中)以及如何修复它

sqlalchemy_和_graphene.py是

Base = declarative_base()

class ShopModel(Base):
    __tablename__ = 'shop'
    id = Column(String(128), primary_key=True)

class Shop(SQLAlchemyObjectType):
    class Meta:
        model = ShopModel
        interfaces = (relay.Node, )

Tags: iddatabasesqlalchemy情况教程shopclass
1条回答
网友
1楼 · 发布于 2024-04-18 16:28:19

您需要借助于source参数显式指定id字段

import graphene
from graphene_sqlalchemy import SQLAlchemyObjectType


class Shop(SQLAlchemyObjectType):
    any_name = graphene.String(source='id')

    class Meta:
        model = ShopModel
        interfaces = (relay.Node,)

相关问题 更多 >