2012-09-24 65 views
0

我使用rails 3.2,但我正在用CodeKit編譯我的咖啡文件。Rails和codekit - 如何禁用rails coffescript編譯

我仍然希望將我的咖啡文件存放在「資產」中,但每次重新啓動導軌時,都會在那裏找到它們並嘗試自行編譯它們。

我的文件住在/assets/cafe/myscript.coffee和codekit編譯他們到我的Gemfile的咖啡軌寶石已經被註釋掉/assets/javascripts/myscript.js

(軌時嘗試(重新)編譯它給它「扔錯誤(」LoadError:沒有這樣的文件加載 - coffee_script)「 - 雖然我真的不希望它甚至嘗試編譯。

設置」config.assets.compile = false 「在application.rb導致」application.js沒有預編譯「

+0

你可以看到LoadError從哪裏拋出?看起來它仍然試圖運行咖啡欄寶石。你可以驗證它不在你的Gemfile.lock - 一些其他的寶石,如RailsAdmin,依賴它,並會導致它被安裝和使用。 – francpaul

+0

儘管它沒有加載,它仍然在/ assets中找到咖啡文本,所以試圖編譯它們。似乎沒有什麼辦法可以解決這個問題,我感到很驚訝。 – Kevin

回答

1

你應該只是配置你的鏈輪清單不需要整棵樹。

編輯應用程序/資產/ Java腳本/ application.js中

通常它看起來像這樣:

//= require jquery 
//= require jquery_ujs 
//= require_tree . 

變化,要

//= require jquery 
//= require jquery_ujs 
//= require myscript 
+0

咖啡標記實際上是在../coffee中,所以它不應該是這種清單導致它們被編譯? – Kevin

0

的(劣質)的解決方法是把我的coffeescripts在「應用程序」內而不是「資產」(所以在樹上再增加一個分支)

這太糟糕了,因爲它不是它們應該去的地方,但至少它確實把它放在rails的潛行者傾向之外,以便在資產的任何地方找到coffeescript文件並嘗試編譯它們。

+0

在/ app下創建文件夾對許多事情都很有幫助。我想我們只需要將/ app/assets文件夾作爲資產管道的域名。 – francpaul