问题标签 [globalize3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
257 浏览

ruby-on-rails-3 - 使用 Globalize3 加载特定翻译

是否可以使用 Globalize 3 加载特定的翻译?

例如,我有一个Post可翻译的,并在前端以正确的语言环境显示。但是,我想在管理员中显示一个相同的版本,它具有固定的语言环境:en。

这样做的一种方法似乎是告诉我们所处的语言环境:

工作得很好,但这将覆盖全球的语言环境。

那么,我怎样才能为这一个实例请求特定的语言环境呢?

0 投票
3 回答
2906 浏览

ruby-on-rails - 未定义的方法“create_translation_table!”

我有一个新的 Rails 引擎,我想使用 globalize3。我在我的 lib//engine.rb 中做到了这一点:

现在,我尝试创建这样的迁移:

我有这个错误:

我认为文件 'lib/globalize/active_record/migration.rb' 没有加载。

有什么解决办法吗?

0 投票
0 回答
422 浏览

ruby-on-rails - 有什么方法可以暂时禁用 I18n 后备/Globalize3 翻译?

我正在尝试使用 Globalize3 和 I18n 后备实现已翻译属性的后备。为了让备用方案启动并运行,我在 environment.rb 文件中添加了:

然后在我的配置文件中:

现在我有一个应用程序正在运行,如果一个字段没有在“en-US”语言环境中翻译,它将退回到“zh-CN”语言环境,反之亦然。

但是,这意味着回退也会发生在网站上的表单上。这是不受欢迎的行为,原因有两个:

  1. 用户可能会认为这意味着该语言环境对于所看到的输入具有此值(而它是从备用语言环境继承的)。
  2. 保存具有这些继承值的表单实际上会将翻译保存为当前语言环境的值 - 所以突然之间你就获得了两个语言环境的数据,但用户可能不知道这一点(或知道为什么)。

我想在编辑页面/显示具有已翻译属性的对象的表单中禁用回退。有没有办法做到这一点?

我正在使用来自 svenfuchs https://github.com/svenfuchs/globalize3的 Globalize3 和 I18n 版本

0 投票
1 回答
272 浏览

fallback - 根据 Rails 模型关闭 I18n/Globalize3 回退

是否可以根据 Rails 模型关闭 I18n/Globalize3 后备?即有些模型使用后备,有些没有。

0 投票
1 回答
812 浏览

ruby-on-rails - 在查询中使用 globalize3 (with_translation) 和 2 个模型(包括)

使用 Globalize3 我正在尝试在单个查询中加载以下模型,包括翻译:

  • 产品(带有 product_translations)
  • 属性(带有 property_translations)

当我尝试下面的查询时,它只加载产品的翻译。尽管进行了一些尝试,但我不知道如何加载 property_translations。

编辑 (1)

我的目标是用急切加载的翻译加载 2 个模型。现在,它在单个查询中加载产品、product_translations 和属性,但不加载 property_translations

我也试过:

但这里的问题是没有 property_translations 模型(使用 Globalize3 创建的表)

谢谢你的想法!

0 投票
2 回答
1007 浏览

ruby-on-rails-3 - Rails 强制所有翻译

感谢这个要点,我正在globalize3使用。令我烦恼的是,用户可以根据需要添加任意数量的翻译。rails_admin

此外,他不会被迫翻译每个语言环境中的内容(如I18n.available_locales)。我想要那个。你怎么能解决这样的情况?

型号(缩短):

0 投票
1 回答
160 浏览

ruby-on-rails - 模型 has_many OtherModel 但已本地化,因此基于语言环境的同一模型的其他模型不同:如何?

我很难做到这一点,这不是直接的实施问题,但我不明白哪种方法是正确的,我有两个选择,但首先,这些是我的模型:

问题是我想要一个船的页面,在使用区域设置时显示一些技术规格,在不同区域设置时显示其他技术规格。

想法#1

我的基本想法是TechSpec在 tech_spec.value 和TechSpecName字段 tech_spec_name.name上添加 globalize3

想法#2

另一个想法是删除 TechSpecName,而是使用将完全“替换”TechSpecName 的字段 (tech_spec.name)。请注意,在这种情况下,我仍然需要为自动完成获取名称,但我将在 TechSpec 中过滤它们,而不是从 TechSpecName 中获取所有名称。该字段显然将再次使用 globalize3。

我不知道这两种方法的缺点,所以我需要一个建议。

0 投票
0 回答
123 浏览

ruby-on-rails - 如何在带有后备的 globalize3 中获取对象的翻译

我想获得带有后备的翻译。我的方法不适合:

1) 更改语言环境(I18n.locale = :de)

2) 获取翻译(Place.find(:id))

3) ...

4)没有利润!

更新: 我找到了解决方案!

0 投票
1 回答
1582 浏览

ruby-on-rails - Globalize.with_locale 和 I18n.with_locale 有什么区别?

我发现这两种方法都有效,但我不想要奇怪的惊喜:它们之间有什么区别?我可以毫无问题地使用一种或另一种吗?

0 投票
1 回答
207 浏览

ruby-on-rails-3 - 生产服务器上的 Globalize 3 无法正常工作

我正在尝试使用 Globalize3 gem 将模型转换为 Active Record,即数据库的国际化。阅读文档后,我能够在开发和生产环境的本地服务器上成功实现它。但是当我尝试在生产服务器上实现它时,它失败了。它表现出荒谬的行为,即它有效而有时无效。尝试通过用户输入设置语言环境。使用下面的函数来设置语言环境。

globalize3 gem 文档的链接