Django重写模型Clean()与Save()

2024-05-15 04:28:25 发布

您现在位置:Python中文网/ 问答频道 /正文

在保存模型时,我有几个动作要执行,特别是从管理员那里。我将几个字段大写,并检查以确保其中一个字段已被填充。我还创造了场弹。现在,这些函数在重写clean和save函数之间被分开。现在可以用了,但我很好奇什么时候用。我翻阅了文件,找不到具体的使用时间。


Tags: 文件函数模型cleansave管理员时间动作
1条回答
网友
1楼 · 发布于 2024-05-15 04:28:25

您应该使用clean完成与验证相关的工作,并解析/更改/清除输入。资本化的领域和产生一个蛞蝓可以发生在这里。我还使用clean将类似post_type的字段强制为代理模型中的特定值。如果在clean中提升django.core.exceptions.ValidationError('error text'),则'error text'将添加到form.non_field_errors

保存是更改模型实际保存方式的地方。例如,我使用save创建了一组上传的图片。ValidationError如果在这里提出,就不会被捕获,我觉得这是两者之间最重要的实际区别。

相关问题 更多 >

    热门问题