gpt4 book ai didi

python - 从 Django ModelForm 中动态排除字段

转载 作者:太空狗 更新时间:2023-10-29 21:45:01 26 4
gpt4 key购买 nike

我想以编程方式排除表单中的一个字段。目前我有这个:

class RandomForm(BaseForm):
def __init__(self, *args, **kwargs):

# This doesn't work
if kwargs["instance"] is None:
self._meta.exclude = ("active",)

super(ServiceForm, self).__init__(*args, **kwargs)

# This doesn't work either
if kwargs["instance"] is None:
self._meta.exclude = ("active",)

class Meta:
model = models.Service
fields = (...some fields...)

如何仅在创建新模型时排除active字段?

最佳答案

可以这样解决:

class RandomForm(ModelForm):
def __init__(self, *args, **kwargs):
super(RandomForm, self).__init__(*args, **kwargs)
if not self.instance:
self.fields.pop('active')

class Meta:
model = models.Service
fields = (...some fields...)

关于python - 从 Django ModelForm 中动态排除字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50587905/

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