2013-08-07 68 views
0

我看了一下coffeeScript,真的很想在我的rails應用程序中試用它。我知道從rails 3.1開始,coffeeScript現在包含在rails中。但我有一些問題得到它的工作。在rails中包含CoffeeScript文件

我有一個名爲lens.js的文件,我將其更名爲lens.js.coffee,然後將我所有的js轉換成咖啡。從我所看到的屏幕演員和我已閱讀的博客,似乎是我所需要的。但它不會以某種方式拾取文件。

GET http://www.cairo.dev/javascripts/lens.js 404 (Not Found) 

是控制檯正在丟棄的東西。我包括它與我所有其他js文件一樣。

= javascript_include_tag 'lens', 'jquery-ui.min', 'rails', 'application', 'popup', 'jquery.zclip', 'underscore-min' 

注:該鏈接是HAML

這應該工作,因爲它編譯它的CoffeeScript到JS。然後我想知道它是否沒有安裝,所以我添加gem 'coffee-script'到我的gemfile文件,而且我還沒有捆綁。

我在做一些愚蠢的事情。或者我錯過了什麼?

+0

並重新啓動後,捆綁服務器? – levinalex

+0

是'app/assets/javascripts'目錄中的'lens.js.coffee'嗎? – levinalex

+0

此應用程序是在爲其設置資產管道之前構建的。所以我現在正忙着升級它。希望這將解決這個問題 – TheLegend

回答

1

儘量不要在你的Gemfile添加gem 'coffee-script'但:

group :assets do 
    gem 'coffee-rails' 
end 

如果不工作,你可以嘗試刪除您lensjavascript_include_tag,並確保你在你的application.js這一行:

//= require_tree . 
+0

我只是試過,仍然沒有骰子..有沒有像一個coffeescript_include_tag?哈哈 – TheLegend

+0

你確定你嘗試過第二個選項嗎?實際上,通過使用它,您可以從javascript_include_tag中刪除所有庫,並保留:javascript_include_tag:application –

+0

Nop:)您的** config/application.rb **中是否有'config.assets.enabled = true'?在更改Gemfile後是否運行了另一個'bundle install'? – Raindal