【问题标题】:Where should I handle capitalization of words in rails applications?我应该在哪里处理 Rails 应用程序中单词的大写?
【发布时间】:2012-11-26 00:17:10
【问题描述】:

据我所知有很多方法:

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

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

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

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

【问题讨论】:

    标签: ruby-on-rails testing capitalization


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-20
      • 1970-01-01
      • 1970-01-01
      • 2011-12-07
      • 1970-01-01
      相关资源
      最近更新 更多