你将如何处理复杂的网页,你必须显示一个有很多关系的用户帐户(15+)
翻译数据保存在单独的表 (globalize2/3) 中,因此查询上升到 30+。
放置 ACL 和一些日志记录,你会得到 45+ 查询,有时 65+
我不想在多个屏幕上拆分页面,所有数据都需要在一个屏幕上显示。
目前,我已经在 Rails 的一个全局变量中为用户预加载了所有关系表,它工作正常,除了用所有同步和翻译数据维护缓存很复杂。
我已经尝试过 memcached,但速度很慢,因为每个对象都必须根据每个请求进行序列化/反序列化。
处理此类页面的最佳方式是什么?
最佳答案
如果您有一个包含大量关系的单一模型,使用“include”进行预加载应该会对您有很大帮助。在 Rails 2.3 中,它的工作方式类似于:
User.find(1, :include => [:relationship1, :relationship2, :relationship2])
关于ruby-on-rails - 如何加速包含 45 个以上查询的页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3755452/