動画のアップロードシステムを作成しています。
その際にユーザーにすぐにレスポンスを返したいです。
方法としてAjaxを思いつきました。
しかし、検索して出てくるサンプルを見て、これでユーザーに早いレスポンスが返ることが疑問なので質問します。
lang
1%h1 Movie List 2 %table{id: "movies", class: "table"} 3 = render @movie 4= link_to "New Movie", new_movie_path, remote: true
lang
1def create 2 @movie = Movie.build(movie_params) 3 respond_to do |format| 4 if @movie.save 5 format.html 6 format.js 7 else 8 format.js { render :new } 9 end 10 end 11end
lang
1$('#movies').html("<%= j (render @movie) %>");
Ajaxを利用するために、RailsではViewのformにremote: true
を書きます。
想像していたのは、リクエストをjavascriptのフォーマットで返し、jsコードでレンダリングする。
すると早くレスポンスが返る!です。
しかし、そもそも動画の送信に時間がかかったり、if @movie.save
にあるように登録することに時間がかかります。
そのあとにformat.js
をしているので結局レスポンスをすぐに返すことはできていないのでは??と疑問に思います。
動画のアップロード時にユーザーに早いレスポンスが返ること
を目的とする場合、そもそもAjaxを使うことは正しいのか。
リクエストを受け取った際に、DBに保存→フォーマットを返すという順序は違うのではないかと思ったので、この2点について教えていただきたいです。
よろしくお願いいたします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。