从pre_save接收函数中提出ValidationError?

时间:2011-04-26 13:04:44

标签: django forms model signals

我想在用instance接收函数pre_save处理数据时,告知用户是否出现故障。

是否可以从接收器功能中提升自定义ValidationError?如果没有,我将如何实施这样的事情?

2 个答案:

答案 0 :(得分:5)

您可以在pre_save侦听器功能中提出您想要的任何异常,它会传播到您的save()来电并阻止其超越。

它会冒泡到你呼叫save()的地方,从这里你可以捕捉它(尝试/除......)并通知用户。

答案 1 :(得分:0)

我猜你应该使用Model.clean()方法(http://docs.djangoproject.com/en/dev/ref/models/instances/?from=olddocs#django.db.models.Model.clean )或形成干净的http://docs.djangoproject.com/en/dev/topics/forms/modelforms/#overriding-the-clean-method