1

我已经实现了 SyliusCartBundle 的基本功能(http://docs.sylius.org/en/latest/bundles/SyliusCartBundle/installation.html

但问题是将商品添加到购物车的方法,因为我知道的唯一方法是

<a href="{{ path('sylius_cart_item_add', {'productId': product.id}) }}">Add product to cart</a>

根据http://docs.sylius.org/en/latest/bundles/SyliusCartBundle/actions.html

我想添加一个项目而不重定向网页。

抱歉,如果太基本了,但我 4 天前才开始使用 symfony。

4

2 回答 2

1

就像@zizoujal 说的与ajax 一样。但是当我问我是 MVC 的初学者时,我并不理解这种方法。

解决方案是:

  1. 创建一个获取购物车信息并仅保存它的操作,返回一个 json 响应,如 {result:success}。
  2. 在使用 ajax 这个动作的视图调用中,如果 return result== success 做你想要的动作。

最后,我不使用 Symfony2(SyliusCartBundle),但在 MCV 方面有更多经验,我可以理解并实施自己的行动(在 cakephp 中)。

于 2014-02-21T15:08:56.043 回答
0

不是最好的方法,但它可以帮助你:

  • 编写您自己的控制器,使用 yourbundle_cart_item_add 并添加相应的路由。
  • 模仿它在Sylius/Bundle/CartBundle/Controller/CartItemController:addAction.
  • 最后,而不是 redirectToCarSummary() 重定向到你想要的。
于 2013-07-11T00:20:19.030 回答