Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails 5中的i18n全球化回退是一个noop吗?_Ruby On Rails_Internationalization_Globalize - Fatal编程技术网

Ruby on rails Rails 5中的i18n全球化回退是一个noop吗?

Ruby on rails Rails 5中的i18n全球化回退是一个noop吗?,ruby-on-rails,internationalization,globalize,Ruby On Rails,Internationalization,Globalize,在这两个应用程序中,application.rb中都有config.i18n.fallbacks=true: Rails.version # "4.2.4" Globalize.fallbacks # [:de] I18n.fallbacks # { :de => [:de] } Rails.application.config.i18n.fallbacks # nil 以及: 与v5.0.0.1不同,在v4.2.4中,gem文件中有gem“globalize”。 已在其中添加了以下提交

在这两个应用程序中,
application.rb
中都有
config.i18n.fallbacks=true

Rails.version # "4.2.4"
Globalize.fallbacks # [:de]
I18n.fallbacks # { :de => [:de] }
Rails.application.config.i18n.fallbacks # nil
以及:

与v5.0.0.1不同,在v4.2.4中,gem文件中有
gem“globalize”
。 已在其中添加了以下提交消息:

Upgrade to Rails 2.3.8.
    In the process, globalize2 is now updated and runs from a gem, not a plug in.
不幸的是,他一句话也没说。 在v5.0.0.1中,这个gem从未出现过(使用
git log-G'globalize'-Gemfile
检查)

在v4.2.4中,使用以下上下文明确添加了该设置:

+    # https://github.com/svenfuchs/globalize3
+    config.i18n.fallbacks = true
只要安装了globalize gem,就有意义

在v5.0.0.1中,该设置是由rails 3.1.0.rc1上的
rails new
添加的,因此,除非gem重新实现到rails中,否则该设置从一开始就是一个noop。我错过什么了吗

在这两种情况下,如果我从
application.rb
中删除该设置,I18n将抛出以下命令:

# I18n.fallbacks # NoMethodError: undefined method `fallbacks' for I18n:Module
除了在配置文件中进行设置外,我不会在应用程序的任何位置调用
回退

我想了解一下:

  • 在v5.0.01中,
    回退是一个死设置,所以我可以安全地删除它吗
  • 为什么
    Rails.application.config.i18n.fallbacks
    返回
    nil
    ,尽管在configs中进行了设置
  • 我搜索了Rails、I18n和Globalize的文档(包括变更日志),但没有发现任何有趣的内容

    # I18n.fallbacks # NoMethodError: undefined method `fallbacks' for I18n:Module