gpt4 book ai didi

ruby-on-rails-3 - 如何在 Rails 3 应用程序中自定义音译?

转载 作者:行者123 更新时间:2023-12-03 12:14:50 25 4
gpt4 key购买 nike

最终,我想使用 Inflector.parameterize 为文章标题创建 slugs,其中包含一堆 unicode 字符(例如“ḤellẒ no”=>“hellz-no”)。根据http://api.rubyonrails.org/classes/ActiveSupport/Inflector.html#method-i-transliterate它说将它们放入 locales/en.yml 文件中。

# Store the transliterations in locales/en.yml
i18n:
transliterate:
rule:
Ḥ: "h"
Ẓ: "z"

我尝试过,但以下不起作用:

"ḤellẒ no".parameterize
# => "ell-no"

但是,当我像第二段所示那样在 Ruby 中更改它时,它就起作用了。

I18n.backend.store_translations(:en, :i18n => {
:transliterate => {
:rule => {
"Ḥ" => "H",
"Ẓ" => "Z"
}
}
})

"ḤellẒ no".parameterize
# => "hellz-no"

我想我想知道为什么将自定义音译放在 locales/en.yml 中不起作用。

即使有人给出了答案,作为一名 Rails 菜鸟,我也想知道人们通常在哪里放置像第二个 block 这样的代码来手动设置 I18n.backend.store_translations?

最佳答案

呃,我已经得到了部分答案。与 http://api.rubyonrails.org/classes/ActiveSupport/Inflector.html#method-i-transliterate 的文档不同说,yml 文件仍应指定语言 - 即 de:

# Store the transliterations in locales/de.yml
de:
i18n:
transliterate:
rule:
ü: "ue"
ö: "oe"

仍然回答问题的第二部分,像 I18n.backend.store_translations(:en,... 这样的代码应该存在于 Rails 3 应用程序中的哪里?

关于ruby-on-rails-3 - 如何在 Rails 3 应用程序中自定义音译?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4976070/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com