我很好奇是否有针对支持多种语言的Web应用程序进行服务器端分页的最佳实践,模式或建议。
现在我们的应用程序通过数据库翻译支持多种语言,所以我们所有的实体都是这样的:
ENTITY X TABLE
---------------------------------------------------------------------
idEntity | code | other attributes....
---------------------------------------------------------------------
1 entity1.name ....
2 entity2.name ....
然后是一个包含所有翻译的“翻译”表:
TRANSLATIONS TABLE
---------------------------------------------------------------------
idTranslation | code | idLanguage | translation
---------------------------------------------------------------------
1 entity1.name 1 myEntity_EN
2 entity1.name 2 myEntity_FR
到目前为止,这很有效,但问题是我们有一个显示数据的webapp,我们正在实现服务器端分页,我们显示的所有列都必须可搜索和排序所有数据表,以及当然,搜索和排序必须基于翻译而不是代码列。
现在,我们所遵循的路径是将查询中的排序,搜索和分页参数添加到数据库中,并且数据库执行表的连接,这似乎有效,但它看起来仍然有点苛刻。 ..我有点担心表现,我们有很多翻译。
那么,是否有任何建议可以遵循这个(我认为)很常见的情况?
提前致谢!
答案 0 :(得分:0)
如果你有服务器端分页,让数据库对文本进行排序没什么不好,它只是你语句中的另一个连接,只要你的整体陈述正确完成,你的DBMS应该能够快速处理它。 / p>