2010-07-30 55 views
0

我有些感動文件到我的應用程序/型號目錄中的子文件夾和到config/environment.rb在config.load_paths添加這些目錄:軌在開發模式2.3 config.load_paths

config.load_paths += Dir["#{Rails.root}/app/models/extras"] 

應用程序/模型中/演員我有幾個ActiveRecord的模型,例如說:

應用程序/模型/演員/ blog_post.rb

class BlogPost < ActiveRecord::Base 
    has_many :comments 
end 

應用程序/模型/演員/ comment.rb

class Comment < ActiveRecord::Base 
    belongs_to :blog_post 
end 

現在,當我把一個頁面(即。/blog_posts /)其中只顯示BlogPosts(沒有加載評論關聯)的一切工作正常 但是,如果我調用頁面(即。/ blog_posts/1)其中評論包含在查詢中(比如,BlogPost.find(1 ,:包括=>:意見),我收到以下錯誤:

Expected .../app/models/extras/comment.rb to define Extras::Comment 

現在一切正常,在生產模式很好,但不是在發展..任何人有一個修復或一個解決方案

+0

如果完全移動這個模型及對LOAD_PATH出/應用/型號的控制器/,他是否仍然拋出這個錯誤? – giraff 2010-07-30 19:26:36

+0

把它移到了app/lib中,我再也沒有遇到那個錯誤 – seb 2010-07-31 07:56:07

回答

0

我認爲這是因爲rails將模塊結構映射到目錄,所以,例如,它期望model/extras中的comment.rb實際上位於命名空間Extras中,即定義爲Extras :: Comment。您應該能夠手動加載目錄vi一個一個需要從W裝入聲明/在博客帖子或者在你需要它