我只是在云服务器上部署我的应用程序,然后遇到错误:
ActionView::Template::Error (couldn't find file 'jquery-ui'
(in /home/me/.rvm/gems/ruby-1.9.3-p429/gems/activeadmin-0.6.0/app/assets/javascripts/active_admin/base.js:2)):
我以前在共享主机上部署了相同的应用程序,但我之前没有收到此错误。所以我想我在部署中遗漏了一些东西。
顺便说一句,在 base.js 中:
//= require jquery
//= require jquery-ui
//= require jquery_ujs
//= require active_admin/application
在我的 app/assets/javascripts/application.js.erb 中:
//= require Player/soundmanager2-nodebug-jsmin.js
//= require jquery
//= require jquery.ui.all
//= require jquery_ujs
//= require best_in_place
//= require best_in_place.purr
//= require jquery-fileupload
//= require contextMenu/jquery.contextMenu.js
//= require contextMenu/jquery.ui.position.js
//= require_tree .
//= require_tree ./Player
编辑:在我的 Gemfile 中:
# Gems used only for assets and not required
# in production environments by default.
group :assets do
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
# gem 'therubyracer', :platforms => :ruby
gem 'uglifier', '>= 1.0.3'
end
gem 'jquery-rails'
gem 'jquery-fileupload-rails'
gem 'jquery-ui-rails'
最佳答案
我一直在为同样的问题而苦苦挣扎...
我相信您在 ActiveAdmin 和 jquery-rails 之间遇到了最近创建的头撞问题。 gem ;您的配置本身没有问题。
jquery-rails 曾经包含一个用于 JQuery UI 的 JavaScript 副本(但不是 CSS;不知道为什么)。这就是被线拉进来的东西
//= require jquery-ui
在 ActiveAdmin 的 base.js 文件中。最近,jquery-rails 放弃了对 JQuery UI JavaScript 的包含,因此上面的行现在没有指向任何内容并导致 Assets 构建错误。安装 jquery-ui-rails 无济于事,因为该 gem 重命名文件,以便正确的 require 行是
//= require jquery.ui.all
可能是为了避免与以前版本的 jquery-rails 发生冲突。
不幸的是,ActiveAdmin 不能简单地基于 jquery-ui-rails 而不是 jquery-rails 并保持与 Rails 3.0 的向后兼容性,至少根据 this issue report .因此,解决方案可能会在几天后出现。
与此同时,只需请求一个旧版本的 jquery-rails,它仍然在你的 Gemfile 中包含 JQuery UI 的 JavaScript:
gem 'jquery-rails', '<3.0.0'
关于ruby-on-rails - 部署 rails 应用程序。 JQuery-UI 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16820074/