проблема с прекомпиляцией на кедре heroku с JQuery UI файл - PullRequest
1 голос
/ 14 марта 2012

Я новичок в рельсах и героку и надеялся, что кто-нибудь сможет мне помочь с проблемой, с которой я столкнулся.У меня есть кедровая стопка.Я добавил config.assets.initialize_on_precompile = false к моему файлу application.rb, когда я нажимаю «Выполняется: rake assets: precompile».Однако я не вижу никаких упоминаний о моем файле jquery-ui-1.8.18custom.css.Когда я запускаю логи heroku, он жалуется, что этот файл не скомпилирован.Я что-то пропустил?Когда я пытаюсь выполнить прекомпиляцию локально, он просто зависает, но, насколько я понимаю, мне все равно не нужно делать это локально, и лучше не делать этого.

Есть предложения?

Вот и конец моегонажмите на heroku:

   Running: rake assets:precompile
   /usr/local/bin/ruby /tmp/build_3gao4dm3wwned/vendor/bundle/ruby/1.9.1/bin
/rake assets:precompile:nondigest RAILS_ENV=production RAILS_GROUPS=assets
-----> Rails plugin injection
   Injecting rails_log_stdout
   Injecting rails3_serve_static_assets
-----> Discovering process types
   Procfile declares types      -> (none)
   Default types for Ruby/Rails -> console, rake, web, worker
-----> Compiled slug size is 16.2MB
-----> Launching... done, v82
   http://MYAPPNAME.herokuapp.com deployed to Heroku

Вот мой журнал ошибок:

  2012-03-14T15:40:29+00:00 app[web.1]: Completed 500 Internal Server Error in 2ms

2012-03-14T15:40:29+00:00 app[web.1]: Rendered homes/index.html.erb within layou
ts/application (0.4ms)
2012-03-14T15:40:29+00:00 app[web.1]:     2: <html>
2012-03-14T15:40:29+00:00 app[web.1]:
2012-03-14T15:40:29+00:00 app[web.1]: ActionView::Template::Error (jquery-ui-1.8
.18.custom isn't precompiled):

ОБНОВЛЕНИЕ:

Я добавил config.assets.compile = true в production.rb, и этокажется, решил проблему.Есть ли какие-либо проблемы с этим?

В качестве альтернативы я попытался вместо этого добавить это в application.rb: onfig.assets.precompile + =% w (* .js * .css), а затем запустить rake precompile иЯ все еще получал ошибку.

1 Ответ

1 голос
/ 14 марта 2012

Это может быть две вещи. Если вы пытаетесь напрямую связать ресурс с вашими представлениями, вам нужно настроить его на предварительную компиляцию:

http://neilmiddleton.com/precompiling-non-default-assets-with-rails-3/

Если, однако, он находится только в дереве, и вы ожидаете, что он будет включен в application.css, то вам нужно убедиться, что он находится либо в манифесте напрямую, либо в одном из включенных деревьев, если есть какие-либо из перечисленных .

например (application.css):

/*
 * This is a manifest file that'll automatically include all the stylesheets available in this directory
 * and any sub-directories. You're free to add application-wide styles to this file and they'll appear at
 * the top of the compiled file, but it's generally better to create a new file per style scope.
 *= require_self
 *= require "reset"
 *= require "base"
 *= require "jquery-ui-1.8.18.custom"
*/
...