模型User有很多Project有很多Task
User(id, email, password)
Project(id, user_id, name)
Task(id, user_id, project_id, title)在user_id模型上有一个更高的父级缓存列,这样可以在不进行连接的情况下实现更快的访问,还是我应该坚持好的ol :through解决方案?
我很想听听这方面的想法,因为我一直担心这样做弊大于利。
发布于 2012-11-06 23:04:34
我不认为这样做是好的做法。现在,您必须将该附加键与父键上的相同键保持同步,并且数据并不像它可能的那样正常化。
除非你有理由这样做,否则我不会走那条路。
如果您发现这样做太不方便了,不需要继续遍历模型层次结构才能找到相关的用户模型,那么也许有更好的方法来表达这些代码,这样您就不必一直做那么多的查找/联接了?
如果主要是出于性能原因,可能会有更好的解决方案--缓存、数据库索引和其他可能有所帮助的技术。
如果添加额外的键是您想要做的事情的最好/最简单的解决方案,那么就可以了。我只想先考虑是否有更好的方法。
https://stackoverflow.com/questions/13215846
复制相似问题