活动管理员 - 某些自定义js不会在生产中加载

时间:2012-03-01 14:38:28

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

我刚刚在生产环境中部署了一个应用程序:

  • 的Debian
  • nginx + unicorn
  • ruby​​ 1.9.3 + rails 3.1.0

我在开发模式中没有任何问题:

  • mac osx 10.7.5
  • 的WEBrick
  • ruby​​ 1.9.3 + rails 3.1.0

我在我的有效管理应用程序中添加了一些自定义 .js ,如下所示:

config.register_javascript 'tiny_mce/jquery.tinymce.js'
config.register_javascript 'jquery-ui-1.8.17.custom.min.js'
config.register_javascript 'active_admin_custom.js'

active_admin_custom.js在生产中正确加载但其他人没有,是否有任何想法来修复它?

这是我的环境/ 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

# Generate digests for assets URLs
config.assets.digest = true

1 个答案:

答案 0 :(得分:2)

当我看到这个问题时,它通常与未编译的资产有关,因为它不是通过资产清单文件包含的 - 在ActiveAdmin中使用register_javascript似乎没有这样做,所以我坚持使用{{ 1}}命令转入active_admin.js:

<强> active_admin.js

require

这样javascript在开发中被正确包含,但也正确编译用于生产。