#javascript #jquery #ruby-on-rails #ajax
#javascript #jquery ( jquery ) #ruby-на-рельсах #аякс
Вопрос:
У меня есть корзина с несколькими товарами, которые я показываю при оформлении заказа, предоставляя пользователям возможность удалять товары, если это необходимо. На странице также есть подсчет общего количества товаров в корзине, которые я пытаюсь обновить после удаления товара. Я получаю 500 ответов сервера с этим кодом.
Как мне правильно вернуть оставшиеся элементы и обновить их обратно на HTML-странице?
##app/controllers/items_controller.rb
def destroy
@item = current_user.cart.find(params[:id])
@item.destroy
if @item.destroyed?
render :status => 200, :json => {:success => true,:remaining => "#{pluralize(current_user.cart.count, 'item')}" }
end
end
и мой файл javascript —
##app/assets/javascripts/cart.js.coffee
jQuery ($) ->
$(".delete-link").bind "ajax:success", ->
$("#cart-count").html(data.remaining)
$(this).closest("tr").fadeOut()
return
Комментарии:
1. Есть ли у вас какие-либо журналы об ошибке? Если вы перейдете к
/log/production.log
, он вернется с любыми ошибками, которые вызвали исключение 5002. Спасибо! Мне пришлось указать метод pluralize с полным именем класса. Это исправлено. визуализация:status => 200, :json => {: success => true,:remaining => «#{ActionController::Base.helpers.pluralize(current_user.cart.count, ‘item’)}» }