развертывание ресурсов пространства имен Rails 3.1 в Heroku - PullRequest
0 голосов
/ 19 сентября 2011

У меня есть приложение Rails 3.1, запущенное на Heroku Cedar, и оно имеет собственную панель администратора. Admin - это просто комбинация контроллеров и представлений в пространстве имен, которые находятся в controllers / admin и в views / admin. Я также «пространство имен» активов: назвал их assets / javascripts / admin.js.coffe и assets / stylesheets / admin.css.scss и включил оба из макетов / admin / application.html.haml

Heroku прекрасно компилирует приложение. (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 Мне не нужно добавлять драгоценные камни, такие как therubyracer-heroku, в мой гемфайл. Мои файлы активов администратора являются файлами манифеста и аналогичны манифестам активов приложения:

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

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

Есть мысли?

Обновление 19 сентября: Как оказалось, ресурсы администратора никогда не компилируются в public/assets и ни один из них не присутствует в public/assets/manifest.yml

1 Ответ

0 голосов
/ 23 октября 2011

Обновили ли вы PATH своего приложения, как также упоминалось в документации Heroku, с которой вы связались?

У меня была такая же проблема, добавление 'bin' к PATH решило ее.

...