簡體   English   中英

Rails 3.2.9和子文件夾中的模型

[英]Rails 3.2.9 and models in subfolders

自rails 3.2.9以來,我無法在子文件夾中存儲模型。 在我的應用程序中,我有這棵樹:

models
 -type_models
 -assets
 -user
 -concerns

也在application.rb中

config.autoload_paths += Dir["#{config.root}/app/models/*"]

所有東西都沒問題,直到3.2.9。 現在我有“未知常量”錯誤。 我不想命名大量模型並修復所有應用程序以使用命名空間模型。

Warning: Error loading /var/www/my_app/app/models/type_models/context_type.rb:
uninitialized constant TypeModels::ContextType

file context_type.rb:

class ContextType ... end

嘗試使用:

config.autoload_paths += Dir["#{config.root}/app/models/**/"]

config/application.rb

config.autoload_paths += %W(type_models assets user concerns).map { |folder| "#{config.root}/app/models/#{folder}"}

models/type_models/context_type.rb

class TypeModels::ContextType < ActiveRecord::Base
  ...
end

重新啟動Rails,你們都已經完成了!

包裝你的class ContextType ... end模塊:

module TypeModels
  class ContextType
    # blah blah
  end
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM