0

我在一个项目中使用 SyliusCartBundle、SyliusFlowBundle 和 SyliusOrderBundle。所以我声明了一个自己的 Cart、CartItem 模型和一个 CartManager。我正在使用购物车没有问题,但是如何将此购物车转换为订单?

我必须一直处理订单模型吗?

在 Sylius 中处理此用例的首选方法是什么?

http://docs.sylius.org/en/latest/bundles/SyliusOrderBundle/builder.html在哪里?我在 SyliusOrderBundle 中找不到 OrderBuilder 类。

4

1 回答 1

1

我想的是,在 Sylius 中,购物车和订单之间的唯一区别在于状态。

我的意思是只有一个订单表和一个订单项目表。当您将某些商品添加到购物车时,它会以特定状态保存到订单/订单商品表中,一旦您结帐、成功付款等,该状态将发生变化。

如果您考虑一下,这是有道理的。

因此,将您的购物车条目转换为订单条目的是事件侦听器,它们响应控制器触发的购物车/订单生命周期事件。在您的情况下,通过结帐流程。

文档有点旧,正在重写(我认为)。在我看来,您最好的选择是查看https://github.com/Sylius/Sylius 这是一个基于所有 sylius 捆绑包的完整工作应用程序,您可以使用它来了解它是如何工作的。查看 CoreBundle 注册的事件侦听器。

如果您查看 CoreBundle/Model 文件夹,您会看到 Sylius\Bundle\CoreBundle\Model\Order 扩展了 Sylius\Bundle\CartBundle\Model\Cart

高温高压

于 2014-04-07T22:38:35.113 回答