在Symfony2中构建购物车的确认表

时间:2015-07-17 18:30:58

标签: php validation symfony entities

我有<?php header('Content-Type: application/json'); echo '{"name":"darian","lastname":"brown","age":87,"adress":{"21 somewhere street","my city","Australia"}}'; ?> 服务,其中传递Cart。它稍后保存到会话中。它看起来像是:

ProductOrder

这不是实体!但我想最终验证(class Cart { /** * @var ProductOrder array */ private $orders = array(); /** * @param ProductOrder $order */ public function addOrder(ProductOrder $order) { $this->orders[] = $order; } /** * @param ProductOrder $order */ public function removeOrder(ProductOrder $order) { $this->orders = array_filter($this->orders, function($item) use($order) { return $item->getProduct()->getId() != $order->getProduct()->getId(); }); } /** * @return ProductOrder array */ public function getOrders() { return $this->orders; } } 约束)数据库中是否有足够的Callback Product。这是我的确认表格:

ProductOrder

public function buildForm(FormBuilderInterface $builder, array $options) { $builder ->add('orders', 'collection', array( 'label' => false, 'type' => new ProductOrderType(), )) ; } /** * @param OptionsResolverInterface $resolver */ public function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setDefaults(array( 'data_class' => 'AppBundle\Service\Cart' )); } 只有数量字段。这是对这种形式的看法:

ProductOrderType

我想用它的数量渲染所有 <form method="post"> {% for order in form.orders %} {{ order.vars.data.product.name }} {{ form_widget(order) }}<br /> {% endfor %} {{ form_widget(form._token) }} <input type="submit" value="{{ 'entity.productOrder.buy'|trans }}"> </form> ,并且找不到更好的方法,但我不认为这是正确的方法。另外:我不知道如何向此表单添加ProductOrder约束 - 因为在我看来,单独的Callback文件仅保留给实体。

请注意,我不想使用第三方套装。

0 个答案:

没有答案
相关问题