Задать вопрос
@Tinord

Какая функция в ruby/javascript схлопывает таблицу?

Доброго времени суток.
Есть сайт, написанный на Ruby, в котором очень много костылей(4 фрилансера работало над сайтом). Проблема заключается в том, что при увеличении количества товара в корзине происходит автоматическое схлопывание таблицы и обнуление доставки.
Вопрос: где происходит неправильная обработка, на стороне сервера или юзера?
5a7aa278991a4753395250.png
5a7aa32a22711925364210.png

Javascript
var postQuantity = Restangular.all('api/quantity.json');

	$scope.plusQuantity = function(id, type) {
		$scope.quantityPromise = postQuantity.post({id: id, type: type, method: 'plus'}).then(
			function(success) {
				// refresher_cart_stat();
				$scope.getCart();

			},
			function(data) { if (debug) { console.log("ERROR_ID75343354", data); if (is_safari) { alert('ERROR_ID93487534'); location.reload(); } } }
		);
	};

	$scope.minusQuantity = function(id, type) {
		$scope.quantityPromise = postQuantity.post({id: id, type: type, method: 'minus'}).then(
			function(success) {
				// refresher_cart_stat();
				$scope.getCart();
			},
			function(data) { if (debug) { console.log("ERROR_ID85844445", data); if (is_safari) { alert('ERROR_ID84930584'); location.reload(); } } }
		);
	};


Ruby
get :add, :map => '/add-to-cart/:id' do
    type = params[:type].present? ? params[:type] : "standard"
    curr_item = { "id" => params[:id], "quantity" => params[:quantity], "type" => type }
    if session[:cart].nil?
      cart = Array.new()
    else
      cart = session[:cart]
    end
    incart = false
    cart.each_with_index do |item, index|
      if item["id"] == curr_item["id"] && (item["type"] == curr_item["type"] || (item["type"].blank? && curr_item["type"] == "standart" ))
        cart[index]["quantity"] = (cart[index]["quantity"].to_i + curr_item["quantity"].to_i).to_s
        incart = true
      end
    end
    if incart
      session[:cart] = cart
    else
      session[:cart] = cart.push(curr_item)
    end
    #redirect(back, :notice => 'Товар добавлен в корзину.')
    
    erb 'SUCCESS!'

  end
  • Вопрос задан
  • 152 просмотра
Подписаться 1 Средний 2 комментария
Решения вопроса 1
@SilentFl
мне кажется что это кеширование вам все портит - '/add-to-cart/:id' должен висеть на post-запросе
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы