Django GraphQL AttributeError:模块';石墨烯&x27;没有属性';英雄';
我是Django&GraphQL的初学者,我在第一步遇到了一个问题,我无法接触到GraphiQL,我犯了一个错误Django GraphQL AttributeError:模块';石墨烯&x27;没有属性';英雄';,django,graphql,graphiql,graphene-django,Django,Graphql,Graphiql,Graphene Django,我是Django&GraphQL的初学者,我在第一步遇到了一个问题,我无法接触到GraphiQL,我犯了一个错误 Could not import 'traindjango.schema.schema' for Graphene setting 'SCHEMA'. AttributeError: module 'graphene' has no attribute 'Heroes'. traindjango/heros/schema.py import graphene from graphe
Could not import 'traindjango.schema.schema' for Graphene setting 'SCHEMA'.
AttributeError: module 'graphene' has no attribute 'Heroes'.
traindjango/heros/schema.py
import graphene
from graphene_django import DjangoObjectType
from .models import Heroes
class HeroesType(DjangoObjectType):
class Meta:
model = Heroes
class Query(graphene.ObjectType):
heroes = graphene.Heroes(HeroesType)
def resolve_links(self, info, **kwargs):
return Heroes.objects.all()
import graphene
import heroes.schema
class Query(heroes.schema.Query, graphene.ObjectType):
pass
schema = graphene.Schema(query=Query)
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'heroes',
'graphene_django',
]
GRAPHENE = {
'SCHEMA' : 'traindjango.schema.schema',
}
from django.db import models
class Heroes(models.Model):
name = models.CharField(max_length=100, verbose_name='Name')
power = models.IntegerField(default=0)
city = models.TextField(max_length=100, verbose_name='City' ,null=True, blank=True)
traindjango/traindjango/schema.py
import graphene
from graphene_django import DjangoObjectType
from .models import Heroes
class HeroesType(DjangoObjectType):
class Meta:
model = Heroes
class Query(graphene.ObjectType):
heroes = graphene.Heroes(HeroesType)
def resolve_links(self, info, **kwargs):
return Heroes.objects.all()
import graphene
import heroes.schema
class Query(heroes.schema.Query, graphene.ObjectType):
pass
schema = graphene.Schema(query=Query)
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'heroes',
'graphene_django',
]
GRAPHENE = {
'SCHEMA' : 'traindjango.schema.schema',
}
from django.db import models
class Heroes(models.Model):
name = models.CharField(max_length=100, verbose_name='Name')
power = models.IntegerField(default=0)
city = models.TextField(max_length=100, verbose_name='City' ,null=True, blank=True)
traindjango/traindjango/settings.py
import graphene
from graphene_django import DjangoObjectType
from .models import Heroes
class HeroesType(DjangoObjectType):
class Meta:
model = Heroes
class Query(graphene.ObjectType):
heroes = graphene.Heroes(HeroesType)
def resolve_links(self, info, **kwargs):
return Heroes.objects.all()
import graphene
import heroes.schema
class Query(heroes.schema.Query, graphene.ObjectType):
pass
schema = graphene.Schema(query=Query)
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'heroes',
'graphene_django',
]
GRAPHENE = {
'SCHEMA' : 'traindjango.schema.schema',
}
from django.db import models
class Heroes(models.Model):
name = models.CharField(max_length=100, verbose_name='Name')
power = models.IntegerField(default=0)
city = models.TextField(max_length=100, verbose_name='City' ,null=True, blank=True)
traindjango/heros/models.py
import graphene
from graphene_django import DjangoObjectType
from .models import Heroes
class HeroesType(DjangoObjectType):
class Meta:
model = Heroes
class Query(graphene.ObjectType):
heroes = graphene.Heroes(HeroesType)
def resolve_links(self, info, **kwargs):
return Heroes.objects.all()
import graphene
import heroes.schema
class Query(heroes.schema.Query, graphene.ObjectType):
pass
schema = graphene.Schema(query=Query)
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'heroes',
'graphene_django',
]
GRAPHENE = {
'SCHEMA' : 'traindjango.schema.schema',
}
from django.db import models
class Heroes(models.Model):
name = models.CharField(max_length=100, verbose_name='Name')
power = models.IntegerField(default=0)
city = models.TextField(max_length=100, verbose_name='City' ,null=True, blank=True)
你能帮我做点什么吗
Thanx很多而不是
heroes = graphene.Heroes(HeroesType)
你需要
heroes = graphene.List(HeroesType)
英雄
是您的模型,不属于石墨烯
然后您需要将resolve\u链接重命名为resolve\u英雄
另外,好的做法是用单数命名django模块,即英雄,而不是英雄。您可以在Meta
中设置复数的详细名称,前提是它不只是添加一个“s”