mirror of
https://github.com/graphql-python/graphene.git
synced 2025-07-18 12:02:19 +03:00
Removed unused __init__ for ObjectType containers
This commit is contained in:
parent
cfff16977c
commit
015bfa3452
|
@ -159,45 +159,3 @@ class ObjectType(BaseType, metaclass=ObjectTypeMeta):
|
||||||
super(ObjectType, cls).__init_subclass_with_meta__(_meta=_meta, **options)
|
super(ObjectType, cls).__init_subclass_with_meta__(_meta=_meta, **options)
|
||||||
|
|
||||||
is_type_of = None
|
is_type_of = None
|
||||||
|
|
||||||
def __init__(self, *args, **kwargs):
|
|
||||||
# ObjectType acting as container
|
|
||||||
args_len = len(args)
|
|
||||||
fields = self._meta.fields.items()
|
|
||||||
if args_len > len(fields):
|
|
||||||
# Daft, but matches old exception sans the err msg.
|
|
||||||
raise IndexError("Number of args exceeds number of fields")
|
|
||||||
fields_iter = iter(fields)
|
|
||||||
|
|
||||||
if not kwargs:
|
|
||||||
for val, (name, field) in zip(args, fields_iter):
|
|
||||||
setattr(self, name, val)
|
|
||||||
else:
|
|
||||||
for val, (name, field) in zip(args, fields_iter):
|
|
||||||
setattr(self, name, val)
|
|
||||||
kwargs.pop(name, None)
|
|
||||||
|
|
||||||
for name, field in fields_iter:
|
|
||||||
try:
|
|
||||||
val = kwargs.pop(
|
|
||||||
name, field.default_value if isinstance(field, Field) else None
|
|
||||||
)
|
|
||||||
setattr(self, name, val)
|
|
||||||
except KeyError:
|
|
||||||
pass
|
|
||||||
|
|
||||||
if kwargs:
|
|
||||||
for prop in list(kwargs):
|
|
||||||
try:
|
|
||||||
if isinstance(
|
|
||||||
getattr(self.__class__, prop), property
|
|
||||||
) or prop.startswith("_"):
|
|
||||||
setattr(self, prop, kwargs.pop(prop))
|
|
||||||
except AttributeError:
|
|
||||||
pass
|
|
||||||
if kwargs:
|
|
||||||
raise TypeError(
|
|
||||||
"'{}' is an invalid keyword argument for {}".format(
|
|
||||||
list(kwargs)[0], self.__class__.__name__
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user