modelformset_factory和on_delete = models.PROTECT

时间:2012-06-08 21:29:28

标签: django validation

我的模型在外键中有on_delete=models.PROTECT约束。当我尝试通过modelformset_factory程序崩溃删除引用的模型时:

  

u'(“无法删除模型\'Zona \'的某些实例,因为它们是   通过受保护的外键引用:   \'Camping.zonaTarifaria \'“,[])'

我希望modelformset_factory像其他验证一样处理验证错误,但不是。有没有神奇的解决方案?

我试图以这种方式将错误移动到ValidationError(当然,在引用的模型中):

class Zona(models.Model):
    codi = models.CharField(u'Codi', 
    ...

    def delete(self, *args, **kwargs):
        try:
            super(Zona, self).delete( *args, **kwargs)
        except Exception, e:
            raise ValidationError( e )

但似乎modelformset_factory在来自delete方法时不会发出验证错误。

0 个答案:

没有答案