gpt4 book ai didi

django - 测试 Django ModelForm 是否有实例

转载 作者:行者123 更新时间:2023-11-28 19:36:51 26 4
gpt4 key购买 nike

如果我正在编辑表单,我想显示一条警告消息,如果我在 Django ModelForm 的创建表单中,我想隐藏它。

form.is_bound 告诉我之前是否填充了表单,但是如何测试 ModelForm 是否设置了现有实例?

我试过这个 hasattr(form.instance, 'pk') 但这样做是否正确?

干杯,

纳提姆

最佳答案

尝试检查 form.instance.pk 是否为 None

hasattr(form.instance, 'pk') 将始终返回 True,因为每个模型实例都有一个 pk 字段,即使尚未保存到数据库中。

正如@Paullo 在评论中指出的那样,如果您手动定义主键并指定默认值,这将不起作用,例如default=uuid.uuid4

关于django - 测试 Django ModelForm 是否有实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9704067/

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