43

when trying to deploy with capistrano, when capistrano use command bundle exec rake

    RAILS_ENV=production 
    RAILS_GROUPS=assets 
    assets:precompile

I have this error

couldn't find file 'jquery-ui'
  (in /home/umbrosus/.rvm/gems/ruby-1.9.3-p392@gancxadebebi/gems/activeadmin-0.5.1/app/assets/javascripts/active_admin/base.js:2)

Before it was working well, but I tried to update to 0.6 and then I started to have this error. I came back to 0.5.1 and the error is still there. Do I do something bad ?

thanks

4

6 回答 6

118

“jquery-rails” gem 最近删除了 jQuery UI。

https://github.com/rails/jquery-rails/commit/2fdcdb2633cbc6426d412c050200fc31d14b9a3b

他们推荐使用 jquery-ui-rails gem。

有一个主动的拉取请求(在撰写本文时)将该 gem 添加为依赖项。然而,ActiveAdmin 的开发人员表示他们“将其锁定,直到我们正式放弃对 Rails 3.0 的支持”。他们锁定的版本是jquery-rails < 3.0.0.

同时,只需修改您的 Gemfile:

gem "jquery-ui-rails" 不推荐,见下面@Kevin 的评论

或者您可以降级您的 jquery-rails 版本:

gem "jquery-rails", "< 3.0.0"

或者你可以从他们的 Github master 分支中提取。他们已经应用了临时修复。

gem "activeadmin", github: "gregbell/active_admin"
于 2013-05-30T23:09:17.163 回答
31

好吧,无需降级jquery-rails2.3.0指定 GitHub 分支。只需使用jquery-ui-rails. 要解决文件名差异:

只需创建app/assets/javascripts/jquery-ui.js

//= require jquery.ui.all

创造app/assets/stylesheets/jquery-ui.css

/*
 *= require jquery.ui.all
 */

这些加载正确的文件以满足 ActiveAdmin

于 2013-08-07T14:08:42.987 回答
11

虽然现在 Pull 请求已经合并到 AA 中,但如果您使用最新版本的 AA,您仍然会遇到这个问题。我不喜欢将 JQuery-rails 强制降低到 2.3.0 版本,所以这里有一个替代解决方案:在active_admin.js文件中替换

//= require active_admin/base

//= require jquery
//= require jquery_ujs
//= require jquery.ui.core
//= require jquery.ui.widget
//= require jquery.ui.datepicker
//= require active_admin/application

感谢Fred在这里提供了该解决方案。

于 2013-07-05T09:51:22.167 回答
1

将“jquery-rails”降级为“2.3.0”也为我解决了这个问题。

于 2013-06-26T14:37:41.487 回答
0

就我而言,jquery 问题是由于我使用的 gem 造成的。我没有直接使用 jquery,所以将 app/assets/js/jquery-ui.js 添加到我的项目中并没有帮助。

将 gem "jquery-rails", "< 3.0.0" 添加到我的 gemfile 中修复了它,但是在那之后我立即遇到了 turbolinks 的问题,这很容易修复......

我的最终gemfile:

# Temporary fix for jquery issue
gem "jquery-rails", "< 3.0.0"
gem 'turbolinks'

... 十分简单

于 2013-11-12T18:44:26.860 回答
0

我知道这已经解决了。但我想为此提供另一种对我有用的解决方案。

遇到此问题时,我正在运行 Rails 4.0.8。

我只是删除了 jquery-rails gem jquery-ui-rails gem 的显式版本号。

我的基本上看起来像这样:

# js
gem 'jquery-ui-rails'
gem 'jquery-rails'

# rails admin
gem 'rails_admin'

Gemfile.lock有点自动找出所有三个宝石的正确版本。

于 2014-08-20T00:47:25.440 回答