コード例 #1
0
 /**
  * @Post("/{user}/courses", requirements={"user" = "\d+"})
  * @ApiDoc(
  *     section="Users",
  *     description="Add course to user",
  *     input="AuthBundle\Form\AddCourseToUserForm"
  * )
  *
  * @ParamConverter("user", class="AuthBundle:User")
  *
  * @param User $user
  * @param Request $request
  * @return View
  * @throws InvalidFormException
  */
 public function addCourseAction(User $user, Request $request)
 {
     $formFactory = $this->get('form.factory');
     $form = $formFactory->create(new AddCourseToUserForm(), $request->request->all());
     if (!$form->isValid()) {
         throw new InvalidFormException($form);
     }
     /** @noinspection PhpUndefinedMethodInspection */
     $course = $form['course']->getData();
     $user->addCourse($course);
     $this->get('doctrine.orm.default_entity_manager')->flush();
     return View::create(null, Response::HTTP_CREATED);
 }