У меня есть лицензионная версия JW Player 6. Я скачал файлы и поместил их в каталог assets/javascript. Помимо каталога скинов, есть файл JS для проигрывателя HTML5, а также файл flash.swf для проигрывателя flash. Все, что я сделал до сих пор, работало локально, но как только я нажимаю на Heroku, я получаю ошибки.
Первая попытка:
В моем файле application.js
:
...
//= require jwplayer/jwplayer
//= require jwplayer/jwplayer.html5 # the file name is jwplayer.html5.js
...
После запуска rake assets:clean ; rake assets:precompile
я получаю следующую ошибку в представлении (на Heroku):
An ActionView::Template::Error occurred in nodes#show:
jwplayer/jwplayer.html5.js isn't precompiled
Вторая попытка:
В моем файле application.js
:
...
//= require jwplayer/jwplayer
...
Затем я добавил это в файл конфигурации среды production.rb
:
# Also tried %w(jwplayer.html5.js)
config.assets.precompile += %w(jwplayer/jwplayer.html5.js)
После очистки и предварительной компиляции ресурсов и отправки в Heroku исходный ActionView::Template::Error
больше не происходил, но теперь JW Player отображает это сообщение:
Error loading player: HTML5 player not found
Это инициализация JW Player в представлении HAML:
:javascript
jwplayer("video_display_object_#{display_object.id}").setup({
width: "948",
height: "533",
image: "#{display_object.video_screenshot_url}",
file: "#{display_object.resource_url}",
modes: [
{ type: 'flash',
src: "#{asset_path('jwplayer/jwplayer.flash.swf')}",
config: {
skin: "#{asset_path('jwplayer/skins/beelden.xml')}",
'controlbar.position': 'over',
'controlbar.idlehide': 'true'
}
},
// I've also tried "#{javascript_path('jwplayer/jwplayer.html5.js}"
// And "/assets/jwplayer/jwplayer.html5.js"
{ type: 'html5', src: "#{asset_path('jwplayer/jwplayer.html5.js')}" }
]
});
Я действительно не знаю, что делать в этот момент. Как я упоминал ранее, все работает локально, но не на Heroku.
Какие-либо предложения?