Ruby on rails Ruby require::文件语法
为什么在某些情况下,要求在ruby中使用file类的文件前面有一个空白名称空间,如下面的config.ruRuby on rails Ruby require::文件语法,ruby-on-rails,ruby,Ruby On Rails,Ruby,为什么在某些情况下,要求在ruby中使用file类的文件前面有一个空白名称空间,如下面的config.ru require ::File.expand_path('../config/environment', __FILE__) 在其他地方没有: require File.expand_path('../../config/boot', __FILE__) 感谢明确指定的作用域解析运算符(如步骤1所示)确保将从全局命名空间加载文件类 如果模块在其命名空间中重新定义了文件类,则第二个版本
require ::File.expand_path('../config/environment', __FILE__)
在其他地方没有:
require File.expand_path('../../config/boot', __FILE__)
感谢明确指定的作用域解析运算符(如步骤1所示)确保将从全局命名空间加载文件类 如果模块在其命名空间中重新定义了文件类,则第二个版本将选择该类而不是全局类 在大多数情况下,可以安全地忽略这一点,并且您可以假设您的类正在由全局命名空间加载,即使没有定义范围解析运算符