這是我的觀點的一部分,如果需要,可以很容易地放入部分。用戶點擊下載鏈接後,如何刷新頁面上的元素?
<% if order_item.still_downloadable == true %>
<%= "Photo ##{order_item.gallery_photo.id} - " %>
<%= link_to "Download here", download_order_order_item_path(@order, order_item) %>
• You may download this <%= pluralize(5 - order_item.download_count, 'more time') %>.
<% else %>
<%= "Photo ##{order_item.gallery_photo.id} - #{order_item.title}" %>
• You may not download this file any more.
<% end %>
以下是order_items控制器中的下載操作。
def download
@order_item = OrderItem.find(params[:id])
@gallery_photo = GalleryPhoto.find(@order_item.gallery_photo_id)
@order_item.update_attribute(:download_count, @order_item.download_count += 1)
send_file @gallery_photo.image.path(:original), :x_sendfile => true, :type => 'image/jpg'
end
什麼是刷新該部分視圖(甚至整個頁面)的最佳方式,以便下載計數更新?
我對這個想法猶豫不決,因爲總是有這種可能性,下載動作的請求需要超過1000ms的時間來處理。 – Preacher