コード例 #1
0
 /**
  * {@inheritdoc}
  */
 public function onPostSubmit(FormEvent $event)
 {
     /** @var Product|null $product */
     $product = $event->getData();
     if (!$product) {
         return;
     }
     $form = $event->getForm();
     if (!$form->isValid()) {
         return;
     }
     /** @var Category $category */
     $category = $form->get('category')->getData();
     if (null !== $product->getId()) {
         /** @var Category $productCategory */
         $productCategory = $this->categoryRepository->findOneByProduct($product);
         if ($productCategory instanceof Category && $category !== $productCategory) {
             $productCategory->removeProduct($product);
         }
     }
     if ($category instanceof Category) {
         $category->addProduct($product);
     }
 }