【问题标题】:deploying Rails 3.1 namespaced assets to Heroku将 Rails 3.1 命名空间资产部署到 Heroku
【发布时间】:2011-11-20 09:21:09
【问题描述】:

我有一个在 Heroku Cedar 上运行的 Rails 3.1 应用程序,它有一个定制的管理面板。 Admin 只是一个命名空间的控制器/视图组合,它存在于控制器/管理员和视图/管理员中。 我还为资产“命名空间”:称它们为 assets/javascripts/admin.js.coffe 和 assets/stylesheets/admin.css.scss 并包括来自 layouts/admin/application.html.haml

Heroku 完美地将 application.(css.scss|js.coffee) 编译为 javascript/stylesheet 文件。当我访问前端应用程序时,它就可以工作了。

但是当我访问“/admin”时,我收到以下错误:

当我访问生产中的网站时,我收到以下错误:

2011-09-19T15:47:18+00:00 app[web.1]: /app/vendor/bundle/ruby/1.9.1/gems/execjs-1.2.5/lib/execjs/runtimes.rb:46:in `autodetect': Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)
2011-09-19T15:47:18+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/execjs-1.2.5/lib/execjs.rb:5:in `<module:ExecJS>'
2011-09-19T15:47:18+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/execjs-1.2.5/lib/execjs.rb:4:in `<top (required)>'
2011-09-19T15:47:18+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `require'
2011-09-19T15:47:18+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `block in require'
2011-09-19T15:47:18+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:223:in `block in load_dependency'
2011-09-19T15:47:18+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `require'
2011-09-19T15:47:18+00:00 heroku[web.1]: Process exited
2011-09-19T15:47:20+00:00 heroku[web.1]: State changed from starting to crashed

根据Heroku's documentation,我不需要将therubyracer-heroku 之类的gem 添加到我的gemfile 中。我的管理资产文件是清单文件,类似于应用程序资产清单:

# application.js.coffee
#= require jquery
#= require jquery_ujs

# admin.js.coffee
#= require jquery
#= require jquery_ujs

有什么想法吗?

9 月 19 日更新:事实证明,管理资产从未编译到 public/assets 中,public/assets/manifest.yml 中也不存在

【问题讨论】:

    标签: heroku ruby-on-rails-3.1 coffeescript sass


    【解决方案1】:

    您是否按照您链接的 Heroku 文档中的说明更新了应用程序的 PATH?

    我遇到了同样的问题,在 PATH 中添加“bin”解决了它。

    【讨论】:

    • 是的,也这样做了。没有帮助。
    猜你喜欢
    • 2011-09-07
    • 2016-02-04
    • 1970-01-01
    • 1970-01-01
    • 2011-12-16
    • 1970-01-01
    • 1970-01-01
    • 2013-09-12
    • 1970-01-01
    相关资源
    最近更新 更多