【发布时间】:2020-04-22 07:06:27
【问题描述】:
如何将数据库中的所有数据作为 Json 返回? 模型.py:
class Hero(models.Model):
Hero_id = models.IntegerField(auto_created=True, primary_key=True, serialize=False, verbose_name='Hero_id')
race = models.CharField(max_length=50, blank=True)
age = models.IntegerField(blank=True)
class_= models.CharField(max_length=50, blank=True)
Views.py:
class HeroSerializer(serializers.ModelSerializer):
class Meta:
model = Hero
fields = ['Hero_id', 'race', 'age', 'class_']
extra_kwargs = {
'race': {
'required': False,
'allow_null':True
},
'age': {
'required': False,
'allow_null':True
},
'class_': {
'required': False,
'allow_null':True
}
}
def HHH():
h=Hero.objects.all()
serializer= HeroSerializer(h)
return JsonResponse(serializer.data)
但它返回一个错误: 尝试获取序列化程序 HeroSerializer 上的字段 Hero_id 的值时出现 AttributeError。序列化器字段可能命名不正确,并且与 str 实例上的任何属性或键都不匹配。原始异常文本是:“str”对象没有属性“Hero_id”。 有什么想法吗?
【问题讨论】:
-
用您的英雄模型代码更新您的问题
标签: python json django database rest