gpt4 book ai didi

Django REST Serializer 使所有字段 allow_null 或不需要

转载 作者:行者123 更新时间:2023-12-05 06:58:51 25 4
gpt4 key购买 nike

我需要在模型中的所有字段(超过 20 个字段)上应用 extra_kwargs,一两个字段除外。

我知道一种方法是:

class MySerializer(serializers.ModelSerializer):
field1 = serializers.CharField(allow_null=True,required=False)

class MySerializer(serializers.ModelSerializer):
class Meta:
model = MyModel
fields = '__all__'
extra_kwargs = {
'field1': {'required': False, 'allow_null': True},}

但是当我必须将它一个一个地应用到每个字段时,它变得太低效了。

有什么可以帮助我做这样的事情吗?

        extra_kwargs = {
'__all__': {'required': True, 'allow_null': False},

最佳答案

关于这个主题的一种方法可以像下面的代码片段一样作为 MySerializer 类:

class MySerializer(serializers.ModelSerializer):
class Meta:
model = MyModel
fields = '__all__'
extra_kwargs = {field.name:{'required': False, 'allow_null': True} for field in MyModel._meta.get_fields()}

关于Django REST Serializer 使所有字段 allow_null 或不需要,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64529349/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com