我正在尝试在 Rails 3.2.8 应用程序中使用 JQuery 插件。
相关代码如下...
在/app/views/layouts/application.html.haml
文件中:
!!!
%html
%head
= javascript_include_tag :defaults
= javascript_include_tag '/assets/nospam.js'
在/public/javascripts/application.js
文件中:
//= require jquery
//= require jquery_ujs
//= require jquery.ui.all
//= require nospam
在/app/assets/javascripts/nospam.js
文件中:
$('#my-email').html(function(){
var e = "me";
var a = "@";
var d = "mysite";
var c = ".com";
var h = 'mailto:' + e + a + d + c;
$(this).parent('a').attr('href', h);
return e + a + d + c;
});
在/app/views/layouts/index.html.haml
文件中:
%p
We love email, so why not send a message to
%a{:href => "#"}
%span#my-email please enable javascript to view
and let us know what's on your mind.
在Gemfile
:
gem 'jquery-rails'
group :assets do
gem 'jquery-ui-rails'
end
我已经运行bundle install
并重新启动了服务器,但插件无法正常工作,并且在 Chrome 的 Javascript 控制台中出现此错误:
GET http://localhost:3000/assets/nospam.js 404 (Not Found)
在rails console
中,我得到:
Rails.application.config.assets.paths
=> ["/Users/steven/Dropbox/testivate/app/assets/javascripts", "/Users/steven/Dropbox/testivate/app/assets/stylesheets", "/Users/steven/Dropbox/testivate/vendor/assets/javascripts", "/Users/steven/.rvm/gems/ruby-1.9.3-p194/gems/jquery-rails-2.1.3/vendor/assets/javascripts"]
我现在通过禁用资产管道来解决这个问题,但我知道出于性能原因我最终应该重新启用它。
我应该怎么做才能让它工作?
谢谢,
史蒂文。