Rails v3.2.2 を使用しています。次のように2つのクラスがあります。
# app/models/article/category/article_relationship.rb
class Article::Category::ArticleRelationship < ActiveRecord::Base
...
end
# app/models/comment/category/article_relationship.rb
class Comment::Category::ArticleRelationship < ActiveRecord::Base
...
end
# app/models/article/category.rb
class Article::Category < ActiveRecord::Base
...
end
# app/models/article.rb
class Article < ActiveRecord::Base
...
end
私のビューファイルで私が述べている場合
::Article::Category::ArticleRelationship
# or
Article::Category::ArticleRelationship
次のエラーが表示されます。
NameError
uninitialized constant Category::ArticleRelationship
どうすれば問題を解決できますか?
アップデート
たとえば、次のように、同じファイルに複数の名前空間クラスを同時に記述すると、問題が「ほとんど」発生することがわかりました。
::Article::Category::ArticleRelationship
::Article::Category
# or
::Comment::Category::ArticleRelationship
::Article::Category
# or
::Article::Category
::Article::Category::ArticleRelationship
# or
::Article::Category::ArticleRelationship
Article::Category
# or
Article::Category::ArticleRelationship
::Article::Category
# or
::Article::Category::ArticleRelationship
::Article
# or
::Article
::Comment::Category::ArticleRelationship
# or
...
そしてそれはランダムに起こるようです!
注:この質問は、この質問に対する@Frederick Cheungの回答に「触発された」ものです。