我有一个内容管理系统应用程序,它使用多态树表作为其排列的核心。我遇到了一个问题,一旦树增长得相当大,并且因为我们有很多不同的模块(大约25),只是这样做:include =>:instance不会切割芥末。实例是我们多态关系的名称。在多态关系中缓存列
有趣的是,在大多数情况下,当我想要这些项目的大量列表时,我真正想要的是他们的名称来自关联的表格(例如为了索引栏的目的),其余的都在中央桌子。所以我认为我应该在中央表中实现某种列缓存作为名称。 (就像rails已经做的计数器缓存一样)。
我只是想知道是否存在一个插件来管理这已经?
如果没有,我只是要在中心表中添加一个'name'列,并且因为所有的多态模型都从一个超类继承而来,只需添加一个回调函数,只要该项是创建或更新。那么我会做一个大迁移来首先填充它?
该设计的任何缺陷?
我认为更灵活的列可以是某种序列化缓存,如果需要的话,我可以稍后存储其他内容。尔加! :D