问题标签 [globalize]

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 回答
95 浏览

ruby-on-rails - Rails 和模型翻译:原始模型中的主要语言,外部存储中的翻译?

我正在寻找适合我需要的 Rails 模型翻译解决方案。

我有一个Page带有字段titlecontent. 我的表中已经有很多记录了。

现在我想翻译标题和内容。我想将titleandcontent字段保留在pages表中(保存主要语言,英语),只需将翻译添加到外部存储(例如德语)。

我检查了 globalize 和mobility gem。但是它们似乎都在强迫我将所有内容都移到外部存储中,因此我需要删除表中的原始titlecontent字段pages

这是真的?有什么办法可以按照我想要的方式去做吗?也许与另一个宝石?

0 投票
2 回答
761 浏览

ruby-on-rails - 将 Globalize gem 与 Ruby on Rails 一起使用时的原始 SQL 查询

我在 Ruby on Rails 应用程序中使用 ruby​​ gem Globalize 进行翻译。我有一个模型,Region我正在翻译该name列。使用 ActiveRecord 查询区域表时,如:

Region.where(name: 'translated')

translated正确返回带有翻译名称的区域记录。但是,当我查询时:

Region.where('name like ?', 'translated')

它返回一个空的 ActiveRecord_Relation。似乎使用 SQL 字符串进行查询会直接访问数据库记录,而无需使用 Globalize gem。

如何执行like将检索已翻译记录的查询?

(我正在使用 Globalize 5.0.0 和 Rails 4.2.8)

0 投票
2 回答
319 浏览

ruby-on-rails - Rails:活动记录查询条件仅在以 sql 形式表示时才有效——使用 Globalize gem

不确定是否有您知道的解决方法,但是在使用 globalize gem 时

如果我将活动记录查询作为标准编写,它会产生一个空集。

-- 一般

不起作用,在哪里

确实有效。

--- 来自我的菜单模型控制台的真实示例:

谁能告诉我为什么会这样?

只是为了好衡量

导轨 4.2.6 红宝石 2.3.0

0 投票
1 回答
39 浏览

ruby-on-rails - Globilize 更新所有翻译,除了“标题”

我在旧的 rails 3.2 项目上使用 Globalize 3.1 和 globalize-accessors,以便以 3 种语言存储一些翻译的字段。我有两个模型,一个公司有很多基本细节[标题、地址、纬度、lng、图像等],我翻译“标题”和一个描述两个字段[摘要和描述],我翻译两个“摘要” '和'描述'。

我正在使用 simple_forms 在我的管理员中添加所有翻译的字段,在 [:en, :de, :it] 语言环境中。

一切都存储和更新没有任何问题,但公司的“title_en”仍然是初始的,所以如果我愿意,我无法更改它。

公司模式

控制器中

在我看来

我仔细检查了每一个可能的拼写错误或错误,但问题仍然存在,无论我只是将空翻译添加到公司,还是我已经填写了所有翻译字段。'title_en' 始终保持不变。所有其他字段(title_it、title_de、summary_en、description_en、description_it 等)都可以毫无问题地更新。

你有什么主意吗?谢谢!

****** 附加信息 ******* 这是我的更新操作

0 投票
2 回答
531 浏览

ruby-on-rails - Rails - Globalize 和 Permanent_record 依赖: :destroy 回调

在 Rails 4.2 项目中,我gem 'permanent_records'用来处理记录软删除和gem 'globalize'翻译。

Globalize 在翻译后的模型和翻译模型(source)之间设置以下关系:

结果是调用:destroy翻译后的模型并没有删除它(这是使用 Permanent_records 的),但我丢失了相关的翻译,我想保留

我应该dependent: :destroy只在某些翻译模型(我使用permanent_records的翻译模型)上覆盖回调吗?如何正确地做到这一点?

有没有其他方法可以得到想要的结果?

0 投票
1 回答
244 浏览

ruby-on-rails-4 - 在可用区域设置的子集上全球化访问器

按照设计,某些类将只处理可用语言的一个子集。

gem 非常有用,globalize-accessors但是,渲染需要定义以下内容

所以虽然available_locales = [:en, :ru, :fr, :de],目标是使用更小的数组[:en, :ru]

文档指出Calling globalize_accessors with no options will therefore generate accessor methods for all translated fields and available languages。_ 但所谓的调用方式是在模型中

该方法如何globalize_accessors引用一个数组,由之类生成的东西

(虽然数组值被引用......)

0 投票
1 回答
2837 浏览

asp.net-mvc - 如何使用 Globalize.js 为 ASP.NET Core MVC 中的客户端验证配置区域性

我很难在我的应用程序中配置客户端验证。我希望它能够接受本地化pt-BR输入。

我尝试在启动时使用配置应用程序:

它适用于在服务器端呈现货币、日期时间和数字,但客户端验证仍需要en-US输入。

客户端正在使用jquery.validatejquery.validate.unobtrusive 然后我被建议使用 Globalize.js。

我通过 npm 安装了 globalizenpm instal globalize@1.0.0 并添加了 globalize 包和cldr.js包。并下载jquery.validate.globalize.js到项目中

我在 HTML 中添加了对 js 文件的引用

但不幸的是,当我尝试设置位置时出现此错误Globalize.locale("pt-BR")

E_MISSING_CLDR:缺少必需的 CLDR 内容supplemental/likelySubtags

我错过了什么?

0 投票
2 回答
344 浏览

ruby-on-rails - Rails 5: db:migrate 因 globalize gem PG::UndefinedTable 而失败

我正在尝试将 Rails 应用程序从 4.2 升级到 5.1。

我目前使用的宝石:

  • 宝石'活动记录,'5.1.4
  • 宝石'全球化','5.1.0.beta2'

在我的Gemfile 中

我有一个如下所示的迁移文件:

并且在quota.rb模型中设置了相应的translations指令:

运行迁移会导致以下错误:

我做错了什么还是错过了一些明显的事情?

更新:

我在这方面取得了一些进展。我已经将 SQL 直接输入到迁移中,所以它看起来像这样:

这似乎有效。

本质上,该Quota.create_translation_table! :title => :string指令是单数'"quota"'::regclass化导致失败的。它与 一起传递'"quotas"'::regclass,这不是从类名中推断出来的:/

0 投票
1 回答
247 浏览

globalize - 为什么 globalize-compiler 需要不同的 globalize 包含(npm 与 NuGet)?

经过大量尝试,我让 globalize-compiler 运行起来,因此也得到了一个带有捆绑 CLDR数据的 js 文件(名为cldr_en.js)。为了使用它,我还必须执行以下操作:

这些文件通过npm作为globalize-compiler的依赖项。问题是在我的项目中我使用的是 NuGet全球化包。如果我尝试:

我遇到了 js 错误,并且globalize根本不起作用。有人能说出 globalize 包(npm 和 NuGet -> globalize 与 globalize-runtime)有什么区别,以及是否可以仅在生产中使用NuGet包。

我想设置一个构建,在其中我使用globalize-compiler来获取捆绑的 CLDR数据,然后我想删除globalize-compiler的整个文件夹和依赖项,并且只使用生成的捆绑CLDR文件和globalize from NuGet。_

0 投票
1 回答
3628 浏览

mysql - Rails - 在任何来源中都找不到 i18n-0.9.5

我正在使用 MySQL 开发 Ruby 网站,并且正在使用 Globalize 进行国际化。

但是,当我运行rails g migration create_translation_for_articles 终端显示以下内容:

我添加gem 'i18n', '~> 0.9.5'到 Gemfile 并运行bundle install但仍然没有变化。

我该如何解决这个问题?

更新:当我运行任何rails g命令时会出现该消息

注意:添加或不添加 gem 没有区别。安装i18nusinggem install也给出了相同的结果。

我的 Gemfile 的内容是: