如何防止用户更改Django Rest中的某些字段?

问题描述 投票:0回答:1

我的 Django REST 应用程序有一个实体,在创建/更新期间,某些字段是由后端而不是用户设置的,但用户仍然可以提交请求来更新这些字段。

仅由后端更改的字段:

by_backend_only = [
    "company",
    "schedule_format",
    "file_url",
    "is_valid",
    "err_msg",
    "total_flights"
}

序列化器

class ScheduleSerializer(ModelSerializer):
    class Meta:
        model = RP_Schedule
        fields = [
            "id",
            "name", "season", "airport", "company",
            "schedule_type", "schedule_format",
            "file_url", "err_msg", "is_valid", "total_flights", 
            "date_range_start", "date_range_end",
        ]

如何防止用户更改这些字段,但将它们保留在序列化器中以创建/更新实体?

python python-3.x django django-rest-framework django-serializer
1个回答
0
投票

创建多个序列化器,一个用于创建,另一个用于更新另一个用于读取

© www.soinside.com 2019 - 2024. All rights reserved.