【问题标题】:How to handle Spree::Shipping error in Spree 2.0?如何处理 Spree 2.0 中的 Spree::Shipping 错误?
【发布时间】:2013-09-02 06:03:27
【问题描述】:

我试图挽救 Spree::Shipping Error。发生的情况是,如果任何联邦快递 Api 没有给出正确的响应,用户就会停留在“地址”状态。他不能前行。

【问题讨论】:

    标签: ruby-on-rails-3 spree


    【解决方案1】:

    如果用户无法通过地址状态前进,正确的行为是不允许用户前进。如果用户无法输入他们的地址,您就无法确定运费应该是多少,因此无法向用户收取正确的金额。允许用户通过这个阶段是危险的。

    您可以使用Checkout Flow Customization Guide 自定义结帐流程。然而,这是一个坏主意。最好的办法是找出 FedEx API 的错误是什么,告诉用户是否可以更正,如果无法更正则指出错误。

    【讨论】:

    • 感谢您的回复,我同意您所说的让我向您解释一下场景.. 我正在使用 3 种不同的运输服务。 1. First Class Mail 2. USPS Priority 3. FedEx 现在发生的情况是,如果 FedEx 没有响应任何邮政编码,则用户仅停留在地址状态。即使对于相同的邮政编码,USPS 优先级也会以 rate_hash 响应。我想要的是,如果任何邮政编码没有得到 FedEx 的回复,那么用户应该能够使用其他运输方式(即 USPS、头等邮件)进入下一个状态(“交付”)。联邦快递服务应该隐藏起来。
    • 您最好的选择是更改您要挽救运输错误的位置。检查异常的堆栈跟踪并找到 FexEx 运输方式被添加到可用运输方式列表中的位置。在那里挽救异常,不要将其添加到可用运输方式列表中。然后允许用户继续使用其他运输方式。
    猜你喜欢
    • 2015-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-20
    • 2018-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多