首页 > 解决方案 > 如何在 django restapi[POST] 中编写将 field1 和 field2 的数据库值添加到 field3?

问题描述

在 django restapi 中通过 post 插入数据时,如何编写一个函数来添加字段值?例如:column1:900,column2:1000,column3=column2-column1

标签: pythondjangopython-3.x

解决方案


你可以在序列化程序类中做到这一点

class MySerializer(ModelSerializer):
    class Meta:
        model = MyModel
        fields = ('f1', 'f2', 'f3',)
        extra_kwargs = {'f3':{'read_only':True,},}

    def create(self, validated_data):
        f1 = validated_data['f1']
        f2 = validated_data['f2']

        f3 = f1 + f2
        obj = MyModel(f1=f1, f2=f2, f3=f3)
        obj.save()
        return obj

推荐阅读