2011-08-22 107 views
5

我正在嘗試將我的應用程序升級到Rails 3.1,我有很多自定義Javascript文件,我試圖遷移到新的資產管道。要求從資產路徑的子目錄資產文件

我現在的(即預3.1)目錄結構是這樣的:

public/ 
    foo/ 
     model.js 
     controller.js 
     etc... 

所以,我想這些移動的lib /資產/ JavaScript和保持富/子目錄完好無損(而不是使foo_model.js,foo_controller.js等)。

在我的application.js我試圖做的:

//= require foo/model 

//= require 'foo/model' 

但這些不工作。 Rails的總是給我一個錯誤頁面,並說:

couldn't find file 'foo/model.js' 

我做了測試,事情得到正確包括,如果他們在子目錄不是,所以我知道這不只是我的lib /資產目錄不在包括路徑或其他東西。所以我想我只是想知道是否有辦法做到這一點,或者我應該平坦的目錄和使用foo_model.js等?

回答

6

看起來像只軌子目錄一個級別添加到資產路徑

您可以通過在軌運行控制檯與Rails.application.config.assets.paths電流通路檢查

在application.rb中添加文件夾的絕對路徑,像

config.assets.paths += ["/path/to/lib/assets/javascript/foo"] 
+0

所以根據鏈輪使用網頁(http://getsprockets.org/installation_and_usage)你應該能夠做到如: // =要求 但這似乎不起作用。我不確定這是否是一個錯誤,或者如果我只是做錯了什麼。這對我來說似乎更理想,但是您的解決方案是實際運作的解決方案,所以我給了您信用。 :) – bratsche

相關問題