【问题标题】:Heroku can't find dataTables imagesHeroku 找不到数据表图像
【发布时间】:2012-10-07 16:52:09
【问题描述】:

当我将我的 Rails 3.1.0 应用程序推送到 heroku 时,无法找到某些图像。这似乎只是 dataTables 插件的问题。日志显示如下:

heroku[router]: GET my-app.herokuapp.com/assets/dataTables/back_disabled.png dyno=web.1 queue=0 wait=0ms service=238ms status=404 bytes=728

我正在使用 jquery-ui-rails 和 jquery-datatables-rails gem。这是我的 Gemfile 的摘录:

# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails', "3.1.4"
  gem 'coffee-rails', "~> 3.1.0"
  gem 'uglifier'
  gem 'jquery-ui-rails'
  gem 'jquery-datatables-rails', github: 'rweng/jquery-datatables-rails'
end

gem 'jquery-rails'

一切都在本地主机上运行。

【问题讨论】:

    标签: ruby-on-rails heroku datatables asset-pipeline


    【解决方案1】:

    似乎 DataTables 资产不是由资产管道编译的。您应该尝试在资产组外部添加 gem,以便它也可以在生产中加载,然后资产应该可以访问以提供服务。

    【讨论】:

    • 谢谢。这解决了问题。考虑到资产组上方的评论,我认为这可能是问题所在。您介意解释为什么资产在资产组下时没有在生产中加载吗?
    • 资产组中的 Gem 默认情况下不会在生产环境中加载,因为 Rails 假设所有这些都已预编译,因此可以从文件系统中提供服务。我假设 gem 可以注册它的资产以进行预编译,但在 DataTables gem 的情况下,这个功能似乎没有被添加。如果是这样,图像将在其末尾使用 MD5-Hash 值请求,比如my-app.herokuapp.com/assets/dataTables/back_disabled-e27734b3da30013f044723f9099b9455.png.
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-25
    • 2018-11-15
    • 2019-12-06
    • 2015-08-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多