2016-03-06 88 views
0

我正在尝试合并地址和交付,并将其作为solidus结帐过程中的一个地址作为地址。面对几个问题。我跟着以下过程:Spree Solidus:在结帐时合并地址和交付步骤

remove_checkout_step :deliveryorder_decorator

添加以下代码重写_address.html

<%= form.fields_for :shipments do |ship_form| %> <div class="shipment"> <h5 class="stock-shipping-method-title"><%= Spree.t(:shipping_method) %></h5> <ul class="field radios shipping-methods"> <%= fine %> <% ship_form.object.shipping_rates.each do |rate| %> <li class="shipping-method"> <label> <%= ship_form.radio_button :selected_shipping_rate_id, rate.id %> <span class="rate-name"><%= rate.name %></span> <span class="rate-cost"><%= rate.display_cost %></span> </label> </li> <% end %> </ul> </div> <% end %>

但对于选择的送货方式的单选按钮不出现。我甚至称之为before_delivery回调check_controller的before_address

任何建议是非常有帮助的第一

回答

0

第一件事,当指定船舶的地址,因此这应该是后address一步,才能创建出货量。

也许你可以在地址步骤中禁用此表单并在地址填充(保存)时启用它。在这种情况下,您不必删除交货步骤,而是按照普通的热潮流,只需添加一个ajax请求以保存地址,然后转到交货步骤,然后启用交货的形式。

此外,上述解决方案确保订单创建/更新的管理流程保持不变。

仅供参考:通过删除交货步骤,您基本上已经从您的应用程序中删除了装运,但那不是您想要的,对吗?