django 序列化器丢弃字段

时间:2021-02-24 18:23:03

标签: python django serialization django-rest-framework

我目前正在构建一个 django 应用程序并且我正在序列化我的视图,但是当将序列化器应用于模型时正在删除我想要序列化的字段:

models.py

class vehicles_model(models.Model):
    pk_idmodel = models.AutoField(db_column='PK_IdModel', primary_key=True)  # Field name made lowercase.
    name = models.CharField(max_length=20, default=None)
    fk_idbrand= models.ForeignKey(vehicles_brand, on_delete= models.CASCADE, db_column='FK_IdVehicleBrand', related_name='Brand')

    class Meta:
        db_table = 'vehicles_model'
        verbose_name_plural = "Vehicle Models"

serializers.py

class brandSerializer(serializers.ModelSerializer):
    class Meta:
        model = vehicles_brand
        fields = ['name']   
        depth = 3

class modelSerializer(serializers.ModelSerializer):

    Brand = brandSerializer(many=True, read_only=True)
    
    class Meta:
        model = vehicles_model
        fields = ['name', 'Brand']   
        depth = 3

输出:

    {
        "name": "Aveo"
    },
    {
        "name": "Spark"
    },

哪个是型号名称,但是品牌掉了,我检查了其他解决方案后一直无法修复,在此先感谢您的任何提示或帮助。

1 个答案:

答案 0 :(得分:0)

尝试更新 brandSerializer 序列化程序以包含 brand 字段

class brandSerializer(serializers.ModelSerializer):
    class Meta:
        model = vehicles_brand
        fields = ['name', 'brand`]   
        depth = 3
相关问题