【问题标题】:Using Rails 3 autoload paths isn't loading some folders but is loading others使用 Rails 3 自动加载路径不会加载某些文件夹,而是加载其他文件夹
【发布时间】:2014-02-18 03:10:32
【问题描述】:

我正在使用 application.rb 中的自动加载路径来加载一些额外的模块和结构。

这是执行此操作的以下代码:

config.autoload_paths += %W(
  #{config.root}/app/controllers/concerns 
  #{config.root}/app/models/concerns 
  #{config.root}/app/jobs/
)

有趣的是,用于扩展模型和控制器的“关注”文件夹都运行良好。

但是,jobs 文件夹根本没有加载。

为了加载应用程序中的文件夹,我需要做些什么特别的事情吗?或者有谁知道为什么其中两个文件夹正在加载而第三个没有?

【问题讨论】:

  • 可能是尾部斜线。
  • 哈哈你说得对。在答案中弹出它,我会给你打勾:)

标签: ruby-on-rails ruby-on-rails-3 class environment autoload


【解决方案1】:

尝试删除作业后的斜杠。

config.autoload_paths += %W(
  #{config.root}/app/controllers/concerns 
  #{config.root}/app/models/concerns 
  #{config.root}/app/jobs
)

【讨论】:

    【解决方案2】:

    无论如何您都不需要显式加载作业。

    http://hakunin.com/rails3-load-paths

    【讨论】:

    • 我有同样的问题,应用程序下的新文件夹没有添加到路径中,并且没有加载任何内容,因此如果我尝试在我的 routes.rb 中使用某些东西,例如它不会工作。我必须 config.autoload_paths += Dir[Rails.root.join('app')] 才能让它工作
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-09
    • 2014-10-26
    • 1970-01-01
    • 2014-01-12
    • 1970-01-01
    • 2018-09-03
    相关资源
    最近更新 更多