You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

DRF中调用serializer.data返回空字典无有效数据问题求助

问题原因

你遇到的序列化返回空的问题由两个错误导致:

  • 序列化类继承类型错误:serializers.Serializer 是基础序列化器,不会自动读取Meta配置里的模型、字段参数,只有继承serializers.ModelSerializer的序列化类,才会根据Meta配置自动生成对应序列化字段。你当前没有手动定义任何序列化字段,用基础Serializer自然拿不到任何数据,返回空字典。
  • 字段参数拼写错误:你定义的IndustriaCategoria序列化类中,把字段配置项fields错拼成了fielst,即使修正了继承类,这个拼写错误也会导致配置不生效。

另外还有一个非强制但建议修正的点:你的序列化类名和模型类名完全重名,容易出现导入混淆,建议把序列化类名改为和模型区分的命名,比如IndustriaCategoriaSerializer。

修正后的serializers.py代码

from rest_framework import serializers
from .models import IndustriaCategoria, Post


class IndustriaCategoriaSerializer(serializers.ModelSerializer):
    class Meta:
        model = IndustriaCategoria
        fields = '__all__'


class PostSerializer(serializers.ModelSerializer):
    class Meta:
        model = Post
        fields = '__all__'

验证

修正后重新执行你的测试流程,serializer.data就能正常返回Post实例的全部序列化字段。


内容的提问来源于stack exchange,提问作者Rodragon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 17:36:03