簡體   English   中英

如何增加購物車Rails的數量

[英]How to increase quantity in cart Rails

我正在為咖啡館做推車,除了增加數量外,其他一切都很好。 當我將食物添加到購物車時...它只是在復制相同的食物...而不是增加數量。 我想做一個解決方案,檢查...如果食物已經在購物車中...而不是添加它只會增加數量。 以下是我的控制器,可將食物添加到購物車。 任何幫助將不勝感激

def add_to_cart
  add_to_session(params[:cafe], params[:food])
  redirect_to about_cafe_path(Cafe.find(params[:cafe]))
end

def show_cart
  @cart = session[:cart]
end

def clear_cart
  session[:cart] = {}
  redirect_to show_cart_path
end

def remove
  destroy_food(params[:cafe], params[:food])
  redirect_to :back
end

private

def add_to_session(cafe_id, food_id)
  if session[:cart][food_id].present?
    session[:cart][cafe_id][food_id].quantity += 1
  else
    session[:cart][cafe_id].push food_id
  end
end

def destroy_food(cafe_id, food_id)
  session[:cart][cafe_id].delete food_id
end

您應該檢查if session[:cart][cafe_id][food_id].present? 而不是if session[:cart][food_id].present?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM