Я не использовал версии 2.x
, но я просмотрел их, и этого должно быть достаточно, чтобы переопределить show.html.erb
для продуктов с Deface:
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, и я не могу этого сделать сейчас, я вижу, что они разделили frontend
и backend
, поэтому пути может быть 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.
person
zrl3dx
schedule
05.09.2013