Ruby on Rails::Domains::Article => /app/domains/domains/ariticle.rb

vu8f3i0k  于 2023-05-17  发布在  Ruby
关注(0)|答案(1)|浏览(87)

我有域逻辑代码存储在

app/domains/domains/article.rb

班级是

class Domains::Article
end

让我困扰的是,正确的加载结构是app/domains/domains/article.rb而不是app/domains/article.rb
有谁知道正确的目录结构和相关的autoload_path是什么?
谢谢你!

  • 丹尼尔
4zcjmb1e

4zcjmb1e1#

可以通过以下方式实现:

# config/initializers/autoloading.rb

module Domains
end

Rails.autoloaders.main.push_dir(
  "#{Rails.root}/app/domains",
  namespace: Domains
)

# The next additional lines are necessary in Rails < 7.1.
domains_dir = "#{Rails.root}/app/domains" # has to be a string
ActiveSupport::Dependencies.autoload_paths.delete(domains_dir)
Rails.application.config.watchable_dirs[domains_dir] = [:rb]

相关问题