【问题标题】:Active Admin - some custom js won't load in production活动管理员 - 一些自定义 js 不会在生产中加载
【发布时间】:2012-03-01 14:38:27
【问题描述】:

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

  • debian
  • nginx + 独角兽
  • 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

【问题讨论】:

  • 你能发布 ls -la app/assets/javascripts 和 ls -la vendor/assets/javascripts 的输出吗?
  • 文件结构发生了变化,所以这个问题已经过时了。我记得这是一个缓存问题...但是感谢您的帮助^^

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


【解决方案1】:

当我看到这个问题时,它通常与未编译的资产有关,因为它不包含在资产清单文件中 - 在 ActiveAdmin 中使用 register_javascript 似乎并不正确,所以我坚持使用 require 命令改为 active_admin.js:

active_admin.js:

//= require active_admin/base
//= require cocoon
//= require jquery-ui
//= require tinymce-jquery

这样,javascript 既可以正确地包含在开发中,也可以正确编译用于生产。

【讨论】:

    猜你喜欢
    • 2019-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多