9
我通過引入請求和響應模型來完成掛在控制器後面的一些邏輯,從而對我的控制器進行了重構,結果如下presentation。我用模塊響應和請求分別包裝所有響應和請求模型。應用程序運行完美,但是當我運行測試時,出現下面的錯誤。RuntimeError:在自動加載常量時檢測到循環依賴關係
Failure/Error: Unable to find matching line from backtrace
RuntimeError:
Circular dependency detected while autoloading constant Responses::FolderContentResponse
我的目錄結構如下:
- 應用程序/
- 型號/
- 反應/
注:我已經看到了問題與這個問題有關,但是,他們的問題似乎與我的相似。在我的情況下,它是隨機發生的,只有在運行測試(RAILS TEST ENV)時,應用程序才能完美運行。
module Responses
class ContentResponse
include ActiveAttr::Model
#some attributes
#some methods
end
end
module Responses
class FolderContentResponse < ContentResponse
end
end
的FolderContent響應類從ContentResponse其具有FolderContent其他內容響應使用更通用的方法繼承。
你能提供一個最小的例子(如您的folder_content_response.rb文件,與不影響刪除錯誤的一切)? –
@Fredrich folder_content_response.rb只是一個古老的ruby類 其中有幾個方法。我不認爲這個類的實現與爲什麼不自動加載有什麼關係。只有在運行測試時才更是如此。 我已經編輯了一些代碼離子類的問題 –
Howabout content_response.rb?是否有任何代碼不在方法定義中(即在類加載時運行)? –