问题描述
我在python项目中使用的是官方graphene
软件包。我有一个巨大的嵌套JSON数据,这些数据来自运行中的Docker容器检查命令,我想从中获取一些字段。我可以分别选择所有这些字段,然后将它们添加到字典中,如下所示:
def ContainerConfigs(configs):
data = {}
data['Command'] = configs['Args'][-1]
data['Hostname'] = configs['Config']['Hostname']
data['Image'] = configs['Config']['Image']
data['Distro'] = configs['Config']['Labels']['org.label-schema.name']
data['WorkDir'] = configs['Config']['WorkingDir']
data['IPAddress'] = configs['NetworkSettings']['Networks']['bridge']['IPAddress']
return data
但这是一个很弱的解决方案。我认为可以使用GraphQL对其进行优化。没有服务器,请求和响应。我想创建其Schema
类并发送参数(JSON和Query),然后让该函数执行该查询并返回结果。像这样:
import graphene
# I need to find this part of the code
# class Schema(..):
# ...
# class Query(...):
# ...
def ContainerConfigs(configs,query):
schema = graphene.Schema(query=Query)
# I need to find a way to pass the configs (Json data) to the Query class to
# execute the query_string on the data
query_string = """
query {
Args
Config {
Hostname
Image
WorkingDir
Label{
org.label-schema.name
}
}
NetworkSettings{
Networks{
bridge{
IPAddress
}
}
}
}
"""
result = schema.execute(query_string)
return result
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)