【问题标题】:Rails: Translating Submit Actions Such As Create Or UpdateRails:翻译提交操作,例如创建或更新
【发布时间】:2013-03-22 12:52:36
【问题描述】:

可以添加型号名称的翻译,例如:

en:
  activerecord:
    models:
      user: "Account"

这会将表单提交按钮的默认文本更改为Create Account,而不是Create User。还有一种方法可以翻译Create 本身,最好是按模型。例如,在用户模型中它可能被翻译成Activate Account,而在邀请模型中它可能是Send Invite。

【问题讨论】:

标签: ruby-on-rails internationalization models


【解决方案1】:

绝对的。

这些字符串来自i18n gem,它们的定义在这里:

https://github.com/svenfuchs/rails-i18n/blob/master/rails/locale/en.yml#L136

如果您覆盖了那些确切的翻译键(helpers.submit.create 等),您将万事俱备。

【讨论】:

  • 优秀。也很高兴在一个地方查看所有默认值。这将有助于解决未来的问题。不幸的是,由于文件的结构方式,看起来无法拥有特定于模型的动作名称。不过,这对于定义新的默认值非常有用。
  • 我没试过,但我想知道如果你添加特定于模型的翻译,它是否会起作用——比如helpers.submit.user.create?
  • 只是试了一下,没有运气。我可以直接在提交按钮中提供翻译,例如<%= f.submit t("users.new.create_account") %>。根据我在默认值中阅读的内容,甚至可以执行create_account: "Create %{model}" 之类的操作,从而无需为每个按钮重新翻译模型名称。
猜你喜欢
  • 2017-04-05
  • 2012-10-11
  • 1970-01-01
  • 1970-01-01
  • 2013-09-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多