我有以下模型:Category,SubCategory,Product,User和CategoryPerUser。
以下是相应的ER图:

以下是我想要取得的成就的简要说明:
现在,我在product中编写了一个方法,每当用户添加新产品时,它都会更新CategoryPerUser.products_count。
是否有一种使用counter-cache或counter-culture设置此逻辑的方法?
还是我应该改变我的急诊室?
提前谢谢你,
发布于 2018-06-19 12:43:23
在您的情况下,我更喜欢使用数据库视图。如果您不将大量数据存储在数据库中,这将是一个非常简单和方便的解决方案。
这个解决方案的好处是,您不必在数据库中创建额外的物理表,也不必每次创建/更新记录时都运行一些回调。
只有在引用相应的模型时,才会创建和填充一个虚拟表。您只需创建适当的SQL查询即可。
https://stackoverflow.com/questions/50926014
复制相似问题