1

我的 pb:我有 18 个模型,我想将我的“模型”文件夹拆分为子文件夹。有没有办法告诉 rails 在子文件夹中查找模型?

4

2 回答 2

1

是的,这很容易:

结构:

app/
  models/
    widgets/
      user_widget.rb
    user.rb

楷模:

class Widgets::UserWidget < ActiveRecord::Base
end

class User < ActiveRecord::Base
end

作为记录,它也适用于库:

结构:

lib/
  dsl/
    comments_dsl.rb
  tasks/
  graph.rb

课程:

class Graph
end

class DSL::CommentsDSL
end
于 2013-10-25T16:05:00.407 回答
0

您可以将模型结构如下:

# /app/models/foo.rb
class Foo < ActiveRecord::Base
  ..
  has_many :bars, class_name: Foo::Bar
end

# /app/models/foo/bar.rb
class Foo::Bar < ActiveRecord::Base
  ..
  belongs_to :foo
end

bar您可以通过Foo::Barfoo通过访问模型Foo。Rails 会自动加载/app/models. 所以不需要必要的配置。

于 2013-10-25T16:09:44.187 回答