2015-10-18 68 views
0

我已經爲產品創建了一個半定製的Addon函數。我在後端創建了一個新的關係表,它將一個產品連接到另一個產品(通過後端的複選框和ajax請求)。Spree - 如何將多個產品添加到購物車

我遇到麻煩的是如何操作populate_orders_path,以便我可以同時將各種變體/產品ID傳遞到購物車。

目前在我的車的形式部分我有這樣的:

<div id="product-addons" class="col-md-6"> 
    <h3 class="product-section-title">Add Ons</h3> 
    <%= image_tag('short-line-2.png', class: 'hundy') %> 
    <% addons = Addon.where(product_id: @product.id) %> 
    <% addons.each_with_index do |a, index| %> 
     <%= a.inspect %> 
     <% product_addon = Spree::Product.where(id: a.product_addon_id).first %> 
     <% addon_variant = Spree::Variant.where(product_id: a.product_addon_id).first %> 
     <% addon_image = Spree::Asset.where(viewable_id: addon_variant.id).first %> 
     <div class="col-lg-12"> 
      <%= image_tag('/spree/products/' + addon_image.id.to_s + '/mini/' + product_addon.images[0].attachment_file_name) %> 
      <%= check_box_tag "products[#{a.id}][]", addon_variant.id, index == 0 %> 

      <span style="margin-left: 6px;"><%= product_addon.name %></span> 
      <br/> 
     </div> 
    <% end %> 
    </div> 

但我不知道該怎麼用 <%= hidden_field_tag "variant_id", @product.master.id %>做,以便它使用多個ID的。任何幫助將非常感激。

回答

0

您可以通過Spree促銷獲得以上功能。 配置添加到購物車規則的項目,並在促銷部分通過操作將其他項目添加到購物車。

如果將變式A添加到購物車中,它將以此方式工作,然後變體B將自動添加到購物車。

+0

我看過促銷功能。將在複選框中顯示3種產品供選擇,以便客戶可以選擇0或者他可以選擇全部3.在這種情況下工作嗎? – Adam

+0

該促銷可以配置爲n個組合。即如果在購物車中添加2件商品,然後再贈送另一件商品,或者如果1件商品添加到購物車中,那麼贈送2件商品,或者如果3件商品組合在購物車中,則將100件商品送給智者。你需要探索狂歡促銷活動。 –

+0

他們是插件。因此,顧客會在訂單中添加一盒巧克力或禮品卡。如果我使用促銷活動做到這一點,我需要多種不同的變體和多種不同的促銷才能使其發揮作用? – Adam

相關問題