有什么优势可以覆盖django中的模型方法?

时间:2011-07-05 05:39:23

标签: django django-models

我知道你可以覆盖模型方法,但我很好奇通过这个可能的一切是什么?

另外一个问题是人们想要回答 - >

每当有人在模型中更新和/或删除时,我都想设计安全检查。是否可以在模型方法中以某种方式实现它们,或者将这种逻辑保留在视图中是否更好?

1 个答案:

答案 0 :(得分:1)

  

我知道你可以覆盖模型方法,但我很好奇通过这个可能的一切是什么?

有时你需要它。如果在保存和删除时需要执行除db操作之外的其他操作,该怎么办?

例如,您有一个使用ImageField / FileField的模型。你想要覆盖它们的保存和删除(在向数据库添加行时将图像/文件保存到磁盘,并在删除行时删除它们)

  

每当有人在模型中更新和/或删除时,我都想设计安全检查。是否可以在模型方法中以某种方式实现它们,或者将这种逻辑保留在视图中是否更好?

我不知道您的安全检查。但是,通常在模型上为行级功能定义自定义方法,在Manager(django.db.models.Manager)上为表功能定义自定义方法。

添加/更新/删除模型的过程=查看代码

添加/更新/删除模型的细节(内部)=模型或经理代码

编辑:格式化

相关问题