问题描述
我最近将 graphene-django
从 2.15.0
升级到 2.8.1
版本。在升级之前,我有一些代码可以让我从元中获取任意字段的类型,例如
def field_type(GQLType,name):
try:
return GQLType._Meta.fields[name].type.of_type
except AttributeError:
return GQLType._Meta.fields[name].type
这现在似乎因 'KeyError' 而失败。我使用它如下:
class AddressInput(graphene.InputObjectType):
city = graphene.String()
state = field_type(AddressInterface,'state')()
其中 AddressInterface
定义为
class AddressInterface(ModelBasedInterface):
class Meta:
model = AddressMixin
name = 'AddressInterface'
和 AddressMixin
被定义为
class AddressMixin(models.Model):
class Meta:
abstract = True
city = models.CharField(max_length=128,default='',blank=True)
state = UsstateField(blank=True,null=True)
street = models.CharField(max_length=128,blank=True)
suite_number = models.CharField(max_length=32,blank=True)
zip = models.CharField(max_length=16,blank=True)
county = models.CharField(max_length=64,blank=True)
在这种情况下,我希望动态声明 UsstateField
的石墨烯类型。
如何为接口动态声明 InputObjectType
中的字段类型?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)