1

首先是简化的场景:

  • 商家有产品

  • 商家有分类

  • 产品有子类别

  • 商家的产品分类必须有商家的分类作为父分类

这是使用 RDBMS 方法建模的。我将 Postgres 用于我的数据库,将 Django 用作 Web 框架。我们具有启用/禁用产品/类别/商家等功能。这些影响必须级联,并且数据应保持一致。这应该在哪里处理?我可以在我的数据库中使用触发器来执行此操作,或者在我的 Django 模型中使用预保存/后保存、预初始化/后初始化等方法/信号来执行相同操作。哪个更合适。我对 python 比对 SQL 更舒服,并且相信通过 Django 模型来做这件事使它更容易修改,因为在我的公司,需求容易发生频繁和突然的变化。

4

1 回答 1

1

如果确实与数据完整性有关,请在 Postgres 中进行,当您的数据模型扩展时,保持一致会容易得多。

(我已经将一个应用程序从大约 10 个表增加到大约 70 个表,从那时起,由 DB 模式确保的数据模型部分一直是干净的。试图在“更高”级别上保持一致性的部分搞砸了时不时)

如果是关于应用程序的行为,请在 django 中进行。

于 2015-05-20T08:35:29.850 回答