【问题标题】:I18n in rails 3.2: scoping or lazy lookup for translations within controllersrails 3.2 中的 I18n:在控制器中对翻译进行范围界定或延迟查找
【发布时间】:2014-10-10 12:29:18
【问题描述】:

我尝试在我的控制器中检索一些翻译,但范围将被忽略。 例如:

在 UsersController 中创建操作

t(".notice")

将在第一级(即 en -> notice)而不是 en -> users -> create -> notice 中查找“通知”。 如何“激活”范围,这样我就不必输入了

t("users.create.notice") 

每次。

为什么默认情况下会为视图激活惰性查找的作用域,但对控制器却没有?

使用rails 3.2

【问题讨论】:

    标签: ruby-on-rails internationalization


    【解决方案1】:

    不幸的是,除非您升级到 Rails 4,否则您将不走运。

    Rails i18n guide section 3.2.13 on "lazy" lookups 说:

    Rails 实现了一种在 views

    中查找语言环境的便捷方法

    (强调他们的;惰性查找功能仅限于 Rails 3.2 中的视图)

    This is the commit to Rails 4 也将“惰性”查找引入控制器。

    The latest Rails i18n guide 在撰写本文时声明惰性查找在 Rails 4 中是仅查看的,但它不再正确,因为您可以在 UsersController#create 操作中使用 t(".notice") 并取回预期值.

    【讨论】:

      猜你喜欢
      • 2015-04-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多