【发布时间】:2019-08-09 15:16:36
【问题描述】:
将i18n-active_record 用于多语言环境。它在我的网站上运行良好。
但我面临的问题是,在activeadmin 页面中加载时间过长,当我看到日志时,它会在翻译表上查询每个标签
例如
SELECT COUNT(*) FROM `translations` WHERE `translations`.`locale` = 'en' AND (`key` IN ('activerecord.models.admin') OR `key` LIKE 'activerecord.models.admin.%');
SELECT COUNT(*) FROM `translations` WHERE `translations`.`locale` = 'en' AND (`key` IN ('active_admin.resources.article.new_model') OR `key` LIKE 'active_admin.resources.article.new_model.%');
SELECT COUNT(*) FROM `translations` WHERE `translations`.`locale` = 'en' AND (`key` IN ('formtastic.labels.q.index.title') OR `key` LIKE 'formtastic.labels.q.index.title.%');
SELECT COUNT(*) FROM `translations` WHERE `translations`.`locale` = 'en' AND (`key` IN ('formtastic.labels.q.title') OR `key` LIKE 'formtastic.labels.q.title.%');
因此,数据库负载很大,因为管理面板的使用量更多,并且对于每一列,翻译表上有 200 多个查询
如何在没有语言环境的情况下加载 activeadmin?
【问题讨论】:
标签: ruby-on-rails ruby internationalization activeadmin rails-i18n