0

据我所知有很多方法:

  1. 直接在代码中:这只有在应用程序不需要国际化时才有效,但我认为这不是最好的。
  2. 在本地化文件中:我遇到了一个问题,当我将模型国际化时,我有类似Create %{model}的按钮,如果模型有多个单词,如果只将第一个字母大写,可能会看起来很尴尬。
  3. 在使用 humanize 或 titleize 的代码中:它可能会导致句子大写,如Create And ContinueAnd当你想说什么时大写Create and Continueor Create and continue
  4. Trough CSS:我认为这是最好的地方,因为大写是页面样式的一部分(或者不是?),它类似于使用 humanize 或 titleize,但你仍然遇到与这些相同的问题。

我已经尝试过它们,但我都遇到了困难。特别是因为存在不应该转换为小写的首字母缩略词以及大写时看起来有点难看的文章。

此外,有时您想使用相同的单词但大写不同。在这种情况下,最好在语言环境文件中使用两个不同的条目,还是使用 3 或 4 来更改它们?

当使用第 4 个选项时,我发现很难编写测试,因为 html 的所有内容都是小写的,但事实并非如此。Cucumber 不解析 CSS 来检查单词的样式。

4

1 回答 1

0

将其放入本地化有什么问题?将每个文本按照您希望的方式放置在网站上,然后就可以了。如果您自己编写文本,则以后无需以编程方式对其进行修改。

至于模型:将人类可读的名称放入每个模型的翻译中。此外,如果您认为它们需要在某些地方以不同的方式大写 - 仅将模型名称大写,而不是整个按钮文本。

于 2012-11-26T19:59:08.783 回答