簡體   English   中英

瘋狂的寶石,無需結帳

[英]Spree gem without checkout

我在Rails 3.2.14上使用Spree 2.0.4。 我想建立一個電子商務網站,但是它不應該具有結帳功能。 沒有結帳的電子商務網站沒有多大意義,但本質上是B2B模式,因此零售銷售不會發生。 我已經閱讀了文檔 ,並顯示了自定義結帳流程的步驟,但仍不清楚如何完全刪除此功能。 我的要求是

  1. 前端沒有價格顯示
  2. 否添加到購物車或數量選項

我想使用Spree,因為它具有庫存管理和UX模塊,可以幫助我快速啟動和運行。

沒有捷徑可做,但是最簡單的方法是擺脫任何參考,以檢出前端的數量和數量。 您可以完全或使用deface來覆蓋引用它們的視圖(建議使用deface,但學習起來也要花一些時間),並且只需刪除任何數量字段,價格標簽,購物車或結帳鏈接即可。

但是,與Spree合作已經有一段時間了,我的個人建議是從github分支出spree項目,並選擇性地刪除前端,后端和核心引擎中不需要的功能。 但是,這將需要花費額外的精力。

我沒有使用過2.x版本,但我看它,它應該足以覆蓋show.html.erb產品有污損:

app/overrides/products/show.rb:

 Deface::Override.new(
   virtual_path: 'spree/products/show',
   name: 'Remove cart',
   remove: '[data-hook="cart_form"]')

與產品索引相同。

app/overrides/shared/_products.rb:

 Deface::Override.new(
   virtual_path: 'spree/shared/_products',
   name: 'Remove price from products index',
   remove: "[erb-loud]:contains('display_price(product)')")

當心,根據我在1.3版本上的經驗,我上面沒有進行測試就編寫了上面的代碼,我沒有安裝任何Spree 2.x版本,現在我不能這樣做,我看到它們將frontendbackend ,所以路徑可能是spree/frontend/app/views/spree/shared_products而不是上面的,但是我對此表示懷疑。

當然,那只會從視覺上將其刪除,您也可以嘗試使用Product類,例如,覆蓋一些基本方法,例如:

Spree::Product.class_eval do
  def on_sale?
    false
  end
end

但同樣,它是基於1.3的,我只是指出您要看的地方,因為自1.3以來它可能發生了很大變化。

如果要擺脫所有簽出選項的痕跡,應按照@Miotsu的說明進行操作,因為這將刪除Spree的基本功能之一。

暫無
暫無

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

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