rake assets:预编译错过了jquery-ui-rails文件

时间:2014-07-04 13:56:22

标签: ruby-on-rails asset-pipeline activeadmin

似乎active_admin有一些缺失依赖项阻止rake assets:precompile成功:

rake aborted!
Sprockets::FileNotFound: couldn't find file 'jquery.ui.datepicker'
  (in /home/avril14th/.rvm/gems/ruby-2.1.2/bundler/gems/active_admin-8ec04cfbf8fd/app/assets/javascripts/active_admin/base.js.coffee:2)

active_admin依赖于jquery-ui-rails并浏览gem文件树正确生成文件。它只是意味着资产预编译无法到达它。

我使用rails 4.1.4。

应该怎么处理这个?

2 个答案:

答案 0 :(得分:2)

问题是最新版本的jquery-ui使用了连字符(' jquery-ui / datepicker')而不是点(' jquery.ui.datepicker')。 您必须在Gemfile中添加jquery-ui-rails gem,并且必须是当前用于activeadmin的版本&#;; 39.1'

添加到您的Gemfile

gem 'jquery-ui-rails', '~> 4.2.1'

运行bundle update,瞧,一切正常

答案 1 :(得分:0)

此问题正在此处进行:https://github.com/gregbell/active_admin/pull/3251

那里有效的解决方案是:

在active_admin.js.coffee中存在以下行:

#= require active_admin/base

将其更改为:

#= require jquery
#= require jquery-ui/datepicker
#= require jquery-ui/dialog
#= require jquery-ui/sortable
#= require jquery-ui/widget
#= require jquery_ujs
#= require_self