我在 Django 中执行 JSONRenderer.render(serialized_student_data.data) 时遇到问题
I am facing issue while executing JSONRenderer.render(serialized_student_data.data) in Django
我是 Django 的新手,每当我执行行 json_data = JSONRenderer.render(serialized_student_data.data) 时,它都会给我错误 TypeError : render() 缺少 1 个必需的位置参数:'data'
#这是models.py
中的代码
class StudentModel(models.Model):
name = models.CharField(max_length=100, default='user')
roll_no = models.IntegerField(default=1)
city = models.CharField(max_length=100, default='Ahmedabad')
#这是serializers.py
中的代码
class StudentSerializer(serializers.Serializer):
name = serializers.CharField(max_length=100)
roll_no = serializers.IntegerField()
city = serializers.CharField(max_length=100)
#这是views.py
中的代码
def student_view(request):
student_object = StudentModel.objects.get(id=3)
serialized_student_data = StudentSerializer(student_object)
json_data = JSONRenderer.render(serialized_student_data.data)
return HttpResponse(json_data, content_type='application/json')
您应该创建 JSONRender 对象而不是使用 class,代码将是,
json_data = JSONRenderer().render(data=serialized_student_data.data)
我是 Django 的新手,每当我执行行 json_data = JSONRenderer.render(serialized_student_data.data) 时,它都会给我错误 TypeError : render() 缺少 1 个必需的位置参数:'data'
#这是models.py
中的代码class StudentModel(models.Model):
name = models.CharField(max_length=100, default='user')
roll_no = models.IntegerField(default=1)
city = models.CharField(max_length=100, default='Ahmedabad')
#这是serializers.py
中的代码class StudentSerializer(serializers.Serializer):
name = serializers.CharField(max_length=100)
roll_no = serializers.IntegerField()
city = serializers.CharField(max_length=100)
#这是views.py
中的代码def student_view(request):
student_object = StudentModel.objects.get(id=3)
serialized_student_data = StudentSerializer(student_object)
json_data = JSONRenderer.render(serialized_student_data.data)
return HttpResponse(json_data, content_type='application/json')
您应该创建 JSONRender 对象而不是使用 class,代码将是,
json_data = JSONRenderer().render(data=serialized_student_data.data)