我想知道是否有人可以提供帮助。我们正在组合一个 Spring MVC 和 Webflow 应用程序,并希望将所有屏幕文本等放在数据库支持的消息资源包中。我有一个简单的实现这个工作没问题。但是,我们需要支持应用程序的白标,包括文本的版本控制。
当我说“白标”时,我的意思是核心应用程序需要为不同的商业品牌打上烙印。品牌的 css 元素很简单——我们将使用 Spring 主题。但品牌延伸到不同的屏幕文字。例如,brandX 可能会问“你叫什么名字”,brandY 可能会问“请输入你的名字”。
此外,我们需要支持每个品牌的屏幕文本版本控制。这是为客户提供一致的用户旅程和信息 - 例如:如果他们在第 1 天看到一组给定的屏幕标签并保存他们的报价,他们应该在第 10 天检索他们的报价时看到相同的屏幕标签等,即使该品牌的屏幕文本同时进行了 5 次迭代。(实际上变化的频率不会那么频繁,但我们仍然需要支持它)
我已经玩了一段时间了,在我早期的实验中,我认为我可以简单地为资源包中的消息键添加前缀:
brandX.firstName = What is your firstname?
brandY.firstName = Please enter your firstname
但这在几个方面感觉是错误的。
- 除非我们有每个品牌的视图(我们可能必须这样做),否则视图需要以某种方式基于模型或主题中的某些内容应用前缀。视图了解模型以选择正确的消息来显示感觉是错误的
- 我不知道如何应用版本控制(除了将其添加到复合键 = brandX.firstname.v2 = 你的名字是什么?)
总而言之,我得出的结论是,这不是消息资源包的用途——它们非常适合基于语言环境的国际化(这就是它们的用途!),但现在我正在尝试做一些完全不同的事情他们。感觉消息资源包作为解决方案可能不适合我的要求。
有没有其他人做过这样的事情?你是怎么解决的?
干杯
弥敦道