【发布时间】:2021-08-27 03:52:40
【问题描述】:
显然我页面上的所有内容都“很好”,但我想进行以下修改,希望您能帮助我????。 我希望用户选择我在1 下方的表格检查的国家运输选项,将 +150 添加到购物车的总价格,并且当他们选择仅个人交付 CDMX 仅显示产品的总价。我曾想过甚至尝试过 if 但不知道如何实现它。
这是我在 app/models 中的 shopping_cart.rb 类
class ShoppingCart < ApplicationRecord
has_many :in_shopping_carts
has_many :products, through: :in_shopping_carts
enum status: {payed: 1, default: 0}
def total
products.sum(:pricing)
end
end
这是我来自 app/views/shopping_carts 的 show.haml 类
%h1.mb-3.text-align:center.text-center Mi carrito
.form-check
%p Selecciona tu tipo de envio:
%input#exampleRadios1.form-check-input{checked: "checked", name: "exampleRadios", type: "radio", value: "option1"}/
%label.form-check-label{for: "exampleRadios1"}
Entrega personal solo CDMX
.form-check
%input#exampleRadios2.form-check-input{name: "exampleRadios", type: "radio", value: "option2"}/
%label.form-check-label{for: "exampleRadios2"}
Envio nacional
.card.large-padding
%table.table.table-striped.table-hover.small#table_shopping_cart
%thead
%td Producto
%td Costo
%td Acciones
%tbody
-@shopping_cart.in_shopping_carts.each do |i_sh|
-product = i_sh.product
%tr{id: "#{product.id}"}
%td= product.name
%td= product.pricing
%td= link_to "Eliminar",i_sh,method: :delete
.top-space.large-padding.text-center#payment_form
%p.medium
%strong
Total: $
=@shopping_cart.total
这是我的应用/控制器中的 shopping_carts_controller.rb 类
class ShoppingCartsController < ApplicationController
def show
if @shopping_cart.payed?
render "shopping_carts/complete"
return
end
end
end
【问题讨论】:
标签: ruby-on-rails e-commerce shopping-cart shipping-method