运行培训中的一些代码时遇到问题:
AttributeError: 'module' object has no attribute 'schema'
我的架构存储在schema.py
文件中
Anacoda Navigator,spyder,Python 2.7,W10
import schema
SCHEMA = schema.schema
运行第一个文件时出现问题:
AttributeError: 'module' object has no attribute 'schema'
你知道这里有什么问题吗?
答案 0 :(得分:0)
我的代码也遇到了同样的问题。我发现这个网站能够回答这个问题。
https://www.programcreek.com/python/example/50397/schema.Schema
将您的行更新为
SCHEMA = schema.Schema
答案 1 :(得分:0)
我遇到了同样的问题。
我的文件结构如下:
├── apps
│ ├── schema
│ | └── schema.py
│ └── users
│ ├── admin.py
│ ├── apps.py
│ ├── __init__.py
│ ├── models.py
│ ├── schema.py
│ ├── tests.py
│ └── views.py
├── db.sqlite3
├── manage.py
└── transportation
├── asgi.py
├── __init__.py
├── settings.py
├── urls.py
└── wsgi.py
根据结构,所有架构都位于apps.schema.schema.py
文件中。
Schema.py
import graphene
from graphene import ObjectType
import [some queries from models]
class Query (apps.users.schema, graphene.ObjectType):
pass
schema = graphene.Schema(query=Query)
有两种方法可以解决此问题。
settings.py
文件并将此行添加到其中。 GRAPHENE = {
'SCHEMA': 'apps.schema.schema.schema'
urls.py
并添加以下行:from apps.schema.schema import schema
urlpatterns = [
...
path('graphql', GraphQLView.as_view(graphiql=True, schema=schema))
]