模型应包含哪些方法

时间:2018-10-12 14:19:10

标签: python django python-3.x design-patterns model

当我有一个模型Car,用户可以向其中上传一张图片时,我可以在Django中创建属性ImageFile来实现这一点。现在,我还想从该文件中获取元数据并将其保存到数据库中。

现在,我不确定如何将这种方法放在哪里以及应该如何设计。显而易见,每次我为模型设置图像时都会调用类似_set_exifdata()_update_exifdata()的方法。

或返回get_exifdata(imagefile)的exifdatas字典的方法。但是这种方法应该成为Car模型的一部分吗?实际上,我在其他任何地方都不需要它,因此将其放在常规帮助程序类中没有任何意义。但是另一方面,我希望将方法拆分为“检索数据”和“设置数据”,例如,_update_exif()可以一次完成这两个操作,也许在设计方式上可以,但是不是,这里有一些模型设计规则,我应该了解并尊重。

我希望有人能为我提供一些模型设计指南(尤其是django),以及哪些方法应该成为方法的一部分,哪些不应该。

1 个答案:

答案 0 :(得分:-1)

如果仅用于汽车,则可以将该值放入模型保存方法中, 每当您更新数据时,都会得到呼叫。