GraphQL django с реализацией реле не может получить конкретный идентификатор
Мой узел выглядит так -
class CustomNode(graphene.relay.Node):
"""
For fetching object id instead of Node id
"""
class Meta:
name = 'Node'
@staticmethod
def to_global_id(type, id):
return id
class ReportFileNode(DjangoObjectType):
database_id = graphene.Int()
class Meta:
model = ReportFile
interfaces = (CustomNode,)
filter_fields: List[str] = ['id']
convert_choices_to_enum = False
И моя схема запроса graphql похожа на -
class Query(graphene.ObjectType):
all_report_files = DjangoFilterConnectionField(ReportFileNode)
Но когда я спрашиваю вот так:
query {
allReportFiles(id: "367") {
edges {
node {
id
}
}
}
}
Мне возвращают все записи, а не только ту, которую я запрашивал.
Также у меня есть еще одно требование: я должен иметь возможность вводить список идентификаторов и получать только эти записи. Когда я не использую настраиваемый узел, этот запрос работает -
query {
allReportFiles(id: ["UmVwb3J0RmlsZU5vZGU6MzY1", "UmVwb3J0RmlsZU5vZGU6MzY3"]) {
edges {
node {
id
}
}
}
}
Но мне нужно, чтобы глобальные идентификаторы отображались и использовались.