2017-05-21 5 views
0

사용자가 비디오를 업로드 할 수있게하고 싶었 기 때문에 carrierwave를 사용하여 해당 기능을 추가했습니다.레일 앱에 비디오를 표시하려고 할 때 argumenterror 받기

<h1>YOUR PROFILE IS HERE</h1> 

<% @userinfors.each do |post|%> 
    <%= video_tag post.video_url.to_s :controls =>true %> 
<%end%> 

내 사용자 정보 컨트롤러 :

class UserinfosController < ApplicationController 
    def index 
     @userinfors = Userinfo.all 
    end 

    def show 
    end 

    def new 
     @userinformation = Userinfo.new 
    end 

    def create 
     @userinformation = Userinfo.new(userinfo_params) 
     if @userinformation.save 
      redirect_to root_path 
     else 
      render 'new' 
     end 
    end 

    def edit 
    end 

    def update 
    end 

    def destroy 
    end 

    private 
     def userinfo_params 
      params.require(:userinfo).permit(:name, :email, :college, :gpa, :major, :video) 
     end 
end 

내 사용자 정보 모델 :

class Userinfo < ActiveRecord::Base 
    belongs_to :user 

    mount_uploader :video, VideoUploader 
end 

의 I 그것을 실행하면, 나는 다음과 같은 오류 enter image description here

내 사용자 정보 인덱스 코드를 얻을 반송파 용 video_uploader 파일 :

class VideoUploader < CarrierWave::Uploader::Base 

    storage :file 

    def store_dir 
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}" 
    end 

end 

내 마이그레이션 파일은 모델을 사용자 정보에 동영상을 추가합니다 :

class AddVideoToUserinfo < ActiveRecord::Migration 
    def change 
    add_column :userinfos, :video, :string 
    end 
end 

어떤 도움에 감사드립니다. 감사합니다

답변

1

당신은 쉼표 누락 :

video_tag(post.video_url.to_s, :controls => true) 
+0

감사합니다! 오류가 사라지고 비디오가 나타나지만 재생되지 않습니다. 다운로드가 가능하며 비디오가 다운로드되므로로드가 잘됩니다. 컨트롤 (재생 버튼, 시간 및 다운로드 버튼)이 나타납니다. 코드에서 왜 이것이 문제인지, 또는 그 문제에 대한 또 다른 질문을 게시하고 여기에 링크를 제공하여 도와 주실 수 있습니까? – Dinukaperera

+0

죄송합니다, 브라우저/HTML 문제처럼 보입니다. – Bartosz