Выпуск конвейера активов Rails 3.2 - PullRequest
1 голос
/ 17 марта 2012

У меня есть файл JS, определенный в приложении - app/assets/javascripts/client/some-client.js.coffee

В моей среде разработчика я могу получить доступ к этому файлу через URL - /assets/client/some-client.js

Но я не могу сделать то же самое впроизводство?... означает, что URL не работает, что может быть не так?

Ответы [ 2 ]

3 голосов
/ 17 марта 2012

В prod у вас будет доступ только к предварительно скомпилированным файлам, если вы используете конфигурацию по умолчанию.

Вы можете определить, какие активы прекомпилировать в config/environments/production.rb:

config.assets.precompile += %w( some-client.js blabla.js some-client.css ) #etc...

Запустите rake assets:precompile, чтобы ... предварительно скомпилировать ваши ресурсы.

Узнайте больше с этим руководством: http://guides.rubyonrails.org/asset_pipeline.html

0 голосов
/ 25 марта 2012

Если вы еще не нашли его, убедитесь, что вы получаете к нему доступ через <% = javascript_include_tag "some-client"%>. Поскольку конвейер актива обрабатывает поиск, где он предварительно скомпилировал актив. Вместе с config.assets.precomile + =% (some-client.js). Кроме того, если вспомогательная функция не может обнаружить, что в производственной среде вы можете попытаться переместить клиент / в активы / javascript / client, я думаю, что она ищет ресурсы, например файлы javascripts в app / assets / javascripts / lib / assets / javascripts / и vendor / assets / javascripts /, если я понимаю конвейер активов. И, похоже, у вас его нет ни в одном из этих файлов, поэтому он может пропустить его, поскольку не видит его.

EDIT:

Похоже, у вас это есть в javascripts / извините. Конвейер активов должен проходить по подкаталогам.

...