2016-09-06 11 views
0

私はRailsが新しく、ビデオアイテムを含むスライダを使用しようとしています。下のhtmlはローカルではあるが実稼働環境では機能しない。私はそれをレールのタグバージョンで置き換える必要がありますが、私はそれを管理することができませんでした。Rails - 本番で認識されないビデオファイル用のカスタムhtmlデータ属性

はlocalhostで動作しますが、ないHerokuので(生産)

<div class="cd-bg-video-wrapper" data-video="/assets/video/video"> 

私はラインの下にしようとしたが、

<div class="cd-bg-video-wrapper" data-video = "<% asset_path('video') %>"> 

注動作しませんでした。このデータは、ビデオ属性の値は、j​​Queryので使用されていますアセットから動画を読み込みます。

Path to Video

次のように私はまた、application.rbファイルを更新:私はあなたのために事前に感謝

function uploadVideo(container) { 

     container.find('.cd-bg-video-wrapper').each(function(){ 

      var videoWrapper = $(this); 

      if(videoWrapper.is(':visible')) { 

       // if visible - we are not on a mobile device 

       var videoUrl = videoWrapper.data('video'), 

        video = $('<video loop><source src="'+videoUrl+'.mp4" type="video/mp4" /><source src="'+videoUrl+'.webm" type="video/webm" /></video>'); 

       video.appendTo(videoWrapper); 

       // play video if first slide 

       if(videoWrapper.parent('.cd-bg-video.selected').length > 0) video.get(0).play(); 

      } 

     }); 

    } 

require File.expand_path('../boot', __FILE__) 
    require 'rails/all' 
    Bundler.require(*Rails.groups) 
    module Europe 

     class Application < Rails::Application 

     config.active_record.raise_in_transactional_callbacks = true 

     config.assets.enabled = true 
config.assets.paths << Rails.root.join("app", "assets","slider_assets","video") 
#tried also... config.assets.paths << Rails.root.join("app", "assets","video") 
     end 

    end 

ビデオを呼び出すjQueryの機能を援助。

答えて

0

UPDATE:私は次のように使用して、レール5アプリケーションでこの作業を取得することができました:

# config/environments/production.rb 
config.public_file_server.enabled = true 

# config/initializers/assets.rb 
Rails.application.config.assets.paths << Rails.root.join("app", "assets", "slider_assets", "videos") 

# app/views/videos/index.html.erb 
<%= asset_path('videos/video.mp4') %> 

動画ディレクトリが自動的にピックアップ、あなたが」なかったのされた場合、それはいいだろう明示的には'videos/video.mp4'と言わなければなりませんが、私はそれを得ることができませんでした。

ファイルには名前にMD5フィンガープリントが追加されているため、使用するファイルごとにデータ属性を追加する必要があることに注意してください。 video-ahutaoh687687.mp4およびvideo-htutaoh23453.webm

+0

私は試してみましたが、動作しませんでした。それは適切な解決策のように見えるが、そうではない。私は質問を再編集して詳細を提供します。ありがとう – Elias

+0

あなたの努力をありがとう... – Elias

0

お試しください。

<%= asset_path('video/video') %> 
+0

これについての前後の文脈とこれがなぜうまくいくのかの説明は良い考えです。 –

+0

いいえ、この方法では動作しません.thnks – Elias

関連する問題