ruby-on-rails – 部署rails应用程序. JQuery-UI错误

我只是在云服务器上部署我的应用程序然后输入错误

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'

解决方法

遇到类似的东西,发现从组中删除gem jquery-ui:assets块为我修复了这个问题.此外,您将在gemfile中注意到它说:

# Gems used only for assets and not required
# in production environments by default.

因此,请确保这不是:资产组的一部分

更新

我相信您对application.js的订购应如下所示:

//= require jquery
//= require jquery_ujs
//= require_tree .
//
//= require jquery-ui
//= require jquery.ui.all
//= require active_admin/application
//= require Player/soundmanager2-nodebug-jsmin.js
//= require best_in_place
//= require best_in_place.purr
//= require jquery-fileupload
//= require contextMenu/jquery.contextMenu.js
//= require contextMenu/jquery.ui.position.js

此外,只是为了确保您的应用程序中的设置正确.rb您应该:

application.rb中

if defined?(Bundler)
  # If you precompile assets before deploying to production,use this line
  Bundler.require(*Rails.groups(:assets => %w(development test)))
  # If you want your assets lazily compiled in production,use this line
  # Bundler.require(:default,:assets,Rails.env)
end

production.rb

# disable Rails's static asset server (Apache or Nginx will already do this)
  config.serve_static_assets = false

  # Compress JavaScripts and CSS
  config.assets.compress = true

  # Don't fallback to assets pipeline if a precompiled asset is missed
  config.assets.compile = true

如果要执行以下命令:bundle exec rake assets:precompile:all RAILS_ENV = production

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...