th_9plus
@th_9plus (たかちゃん)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

ruby on rails 動画投稿機能 viewに表示されない

railsで動画投稿機能実装中なのですが,
動画の投稿はできるのですがviewに表示されないです。
controllerにデータは渡っています。
viewに表示されないのは何故でしょうか?教えて頂きたいです。スクリーンショット 2020-11-16 15.40.02.png

posts/show.html 
 <p>
    <%= link_to @post.video_url.to_s do %>
     <%= video_tag rails_blob_path(@post.video.to_s) %>
    <% end %>
  </p>
posts/new.html
 <%= form_for(@post, url: {controller: "posts", action: "create" }) do |f| %>
    <div class="form">
      <div class="from-body">
        <% @post.errors.full_messages.each do |message| %>
            <div class="form-error">
              <%= message %>
            </div>
        <% end %>
        <textarea name="content"><%= @post.content %></textarea>
       <%= f.file_field :video, {:accept => 'video/*',class: "field-video"} %>
      </div>
        <%= f.submit "送信" %>
      </div>
    </div>
    <% end %>
video_uploder
def extension_whitelist
   %w(jpg jpeg gif png MOV wmv mp4)
  end 
posts.controller
def create
    @post = Post.new(
      content: params[:content],
      user_id: @current_user.id,
      video: params[:video]

      )
    if @post.save
      flash[:notice] = "投稿を作成しました"
     redirect_to("/posts/index")
    else
     render("posts/new")

    end
  end
0

1Answer

webコンソールでvideo_tagにちゃんと動画URLが渡っているか確認した方が良さそうです

  • 動画URLが渡っている→その動画のURLが存在している場合(URLを直に叩いてアクセスできる場合)はマークアップの問題。URLを叩いて404になる場合はバックエンドで正しく保存ができていない
  • 動画URLが渡っていない→バックエンドで動画の保存が正しくできていない

まで原因を絞れそうです。

0Like

Comments

  1. @th_9plus

    Questioner

    wedコンソールというのはいつも使っているターミナルで打つコンソールのことでしょうか?
    videoがDBでnil(登録されていない)なのでvideo_tagに情報が渡っていないのでcontrollerに問題があると思います。
    DBに保存するコードの書き方として video: params[:video]であっているのか、もしくは他の書き方があるのであれば教えて頂きたいです。
  2. formのsubmitをした時に、アプリケーションログに送信したパラメーターもハッシュ形式で表示されると思います。そのハッシュに対応した形でparamsを使う必要があります。今回`form_for`に`@post`を渡しているので、params[:posts][:video]みたいになるんじゃないかと思っています。
  3. @th_9plus

    Questioner

    formのsubmitをした時に、アプリケーションログに送信したパラメーターもハッシュ形式で表示されると思います。この部分を落とし込みたいので分かり易いサイトなどあれば教えて頂きたいです。僕が調べても出てきませんでした。

    ありがとうございます!
    やってみます!
  4. @th_9plus

    Questioner

    ありがとうございます!

Your answer might help someone💌