graphene
graphene copied to clipboard
AttributeError: partially initialized module 'graphene' has no attribute 'ObjectType' (most likely due to a circular import)
Note: for support questions, please use stackoverflow. This repository's issues are reserved for feature requests and bug reports.
- What is the current behavior?
File "/Users/noj/recurrency/legacy-api/v4/graphql.py", line 1, in <module>
import graphene
File "/opt/homebrew/lib/python3.9/site-packages/graphene/__init__.py", line 3, in <module>
from .types import (
File "/opt/homebrew/lib/python3.9/site-packages/graphene/types/__init__.py", line 2, in <module>
from graphql import ResolveInfo
File "/Users/noj/recurrency/legacy-api/v4/graphql.py", line 3, in <module>
class Query(graphene.ObjectType):
AttributeError: partially initialized module 'graphene' has no attribute 'ObjectType' (most likely due to a circular import)
- If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem via a github repo, https://repl.it or similar.
import graphene
class Query(graphene.ObjectType):
hello = graphene.String(description='A typical hello world')
def resolve_hello(self, info):
return 'World'
schema = graphene.Schema(query=Query)
if __name__ == "__main__":
query = '''
query SayHello {
hello
}
'''
result = schema.execute(query)
print (result)
- What is the expected behavior?
No errors.
-
Please tell us about your environment:
- Version: Python 3.9.7
- Platform: Mac
-
Other information (e.g. detailed explanation, stacktraces, related issues, suggestions how to fix, links for us to have context, eg. stackoverflow)
@nojvek This happens because you've got a file named "graphql.py" and so Python uses that instead of the graphql-core module that Graphene depends on. Renaming your file to something else should fix it.