我發現這個問題出現在很多不同的環境中,並希望得到在StackOverflow上修復/調試它的最佳實踐。如何在Rails中修復/調試'預期的x.rb來定義X.rb'
要使用現實世界的例子本今天上午發生在我身上:
expected announcement.rb to define Announcement
類的開發工作正常,從生產控制檯測試和,但在生產雜種失敗。下面是類:
class Announcement < ActiveRecord::Base
has_attachment :content_type => 'audio/mp3', :storage => :s3
end
我會在回答喜歡討論與其說是解決這一特定問題的問題,而是如何正確調試得到的Rails給你一個有意義的錯誤預期x.rb定義X.rb」往往是一個紅鯡魚...
編輯(3個偉大的反應來看,每瓦特/部分解決)
調試:
來自Joe Van Dyk:嘗試通過導致錯誤的環境/實例通過控制檯訪問模型(在上面的例子中:script/console production然後輸入'Announcement'。
從Otto:嘗試通過初始化設置一個最小插件集,例如:config.plugins = [:exception_notification,:ssl_requirement,:all],然後重新啓用一個。
具體原因:
從伊恩·特雷爾:如果你使用attachment_fu確保你安裝了正確的圖像處理器。即使您沒有附加圖像,attachment_fu也會要求它。
從Otto:確保您沒有命名與內置Rails類衝突的模型,例如:Request。
來自Josh Lewis:確保您的應用程序(或Gem列表)中某處沒有重複的類或模塊名稱。
我一直在生產耙子任務有同樣的問題。以下是我找到的最佳解決方案:http://www.spacevatican.org/2008/12/28/when-cache_classes-gets-you-down/ – user1902430 2012-12-13 22:06:22