狂欢宝石没有结帐

时间:2013-09-04 19:46:45

标签: ruby-on-rails checkout spree

我在Rails 3.2.14上使用Spree 2.0.4。我想建立一个电子商务网站,但它不应该有结帐功能。没有结账的电子商务网站没有多大意义,但它本质上是一种B2B模式,因此零售销售不会发生。我已阅读documentation并显示了自定义结帐流程的步骤,但目前尚不清楚如何完全删除此功能。我的要求是

  1. 没有价格显示在前端
  2. 否添加到购物车或数量选项
  3. 我想使用Spree,因为它的库存管理和UX模块,这将帮助我快速启动和运行。

2 个答案:

答案 0 :(得分:0)

没有简短的方法可以做到这一点,但最简单的方法是在前端删除任何对结账和数量的引用。 您可以完全或使用污损覆盖引用它们的视图(更多建议使用deface,但也需要时间学习),只需删除任何数量字段,价格标签,添加到购物车或结帐链接。 / p>

然而,现在已经与Spree合作了很长一段时间,我的个人建议是从github派生狂欢项目并有选择地删除你不想要的功能,包括前端,后端和核心引擎。这需要额外的努力。

答案 1 :(得分:0)

我没有使用过2.x个版本,但我已经查看了它,应该足以覆盖带有Deface的产品的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版本,我现在不能这样做,我看到它们已经分裂{{1 }和frontend,所以路径可能是backend而不是上面,但我对此表示怀疑。

当然,这只会在视觉上删除它,您也可以尝试使用spree/frontend/app/views/spree/shared_products类,例如覆盖一些基本方法,如:

Product

但是再次,这是基于1.3,我只是指着你在哪里看,因为自1.3以来它可能会发生很大变化。

如果你想要删除所有签出选项的痕迹,你应该像@Miotsu一样写,因为你要删除Spree的一个基本功能。