0
基線:我正在構建一個基於django的應用程序,該應用程序嚴重使用管理界面,因爲它爲開發自己的CRUD例程提供了大量工作。到目前爲止,我遇到過幾種情況,我有一些模型可以保存一些一般信息(如父母),並且經常與派生模型(比如孩子)有外鍵關係。django編程 - 管理,模型或視圖中的「創建」方法
我意識到我有時實現了我的例程來在管理類中創建子對象,有時在模型類(從某些管理例程中調用方法)中,有時甚至在視圖類中調用(例如,對POST一些自定義表單上的請求)。現在感覺,我的設計不是很一致(改變一些模型參數分佈在很多文件中的效果),我應該在它變得一團糟之前重構。
那麼最好的方法是什麼?在哪裏應該集中創建/修改相關對象的方法(請記住,我經常想給出一些與流程相關的反饋信息)?
我將解釋你的想法一樣:內的所有確定並收集與您的實際分配對象創建/更新的地方,實際上需要處理的數據,並把實際做的所有方法工作成一個(新)文件。我傾向於直接將它們作爲模型類方法,但有點害怕我的模型類會包含模型通常不知道的一些對象引用(如request或admin,我需要這些引用來觸發某些消息以供用戶)。 – ecp
我認爲只要有一個確定的結構和原因,在類中使用與模型有關的所有方法都是很好的,並且它不會太亂。如果類中的方法太多,那麼可以將它們重構爲單獨的文件。如果方法中存在太多重複,請考慮抽象方法,以便將它們用於多個模型。 – kicker86