我在命名空间project
中有两个模型,如:class Project::Foo
和class Project::Bar
他们有这种关系
{p}app/models/project/foo.rb
has_many :bars
中的
{p} app/models/project/bar.rb
belongs_to :foo
但是,当我想致电Project::Foo.create(...)
甚至Project::Bar.create(...)
时,我会分别获得NameError
或uninitialized constant Foo
Bar
。
我需要在模型中加入这样的东西吗? belongs_to :project::foo
?或者我该如何解决这个问题?
修改
app/models/project/foo.rb
中的现在显示为:
module Project
class Foo
has_many :bars
end
end
和条形图具有相同的结构,但其中包含belongs_to
我仍然得到同样的错误
答案 0 :(得分:1)
如果你有Foo类,文件中的代码应该是
module Project #create the scope
class Foo
end
end
或者您可以使用
定义文件project.rbmodule Project
end
并在项目文件夹中保留相关模型