本文整理匯總了PHP中AppBundle\Entity\Post::setTopic方法的典型用法代碼示例。如果您正苦於以下問題:PHP Post::setTopic方法的具體用法?PHP Post::setTopic怎麽用?PHP Post::setTopic使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類AppBundle\Entity\Post
的用法示例。
在下文中一共展示了Post::setTopic方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: addAction
/**
* @Route("/post/add/{id}", name="addPost")
*/
public function addAction($id, Request $request)
{
$em = $this->getDoctrine()->getManager();
$topic = $em->getRepository('AppBundle:Topic')->find($id);
if (!$topic) {
throw $this->createNotFoundException('No Topic found for id ' . $id);
}
$post = new Post();
$post->setDate(new \DateTime('now'));
$loggedIn = false;
$securityContext = $this->container->get('security.authorization_checker');
if ($securityContext->isGranted('IS_AUTHENTICATED_FULLY')) {
$token = $this->get('security.token_storage')->getToken();
/* @var $user User */
$user = $token->getUser();
$post->setAuthor($user);
$post->setTopic($topic);
$loggedIn = true;
}
$form = $this->createFormBuilder($post)->add('content', TextareaType::class)->add('save', SubmitType::class, array('label' => 'Reply'))->getForm();
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
$em->persist($post);
$em->flush();
return $this->render('Topic/watch.html.twig', array('topic' => $topic, 'form' => $form->createView(), 'loggedIn' => $loggedIn));
}
return $this->render('Post/add.html.twig', array('topic' => $topic, 'form' => $form->createView(), 'loggedIn' => $loggedIn));
}
示例2: create
public function create($owner, Topic $topic, $content, $isSticky = false)
{
$entity = new Post();
$entity->setContent($content);
$entity->setUserId($owner);
$entity->setTopic($topic);
$entity->setIsSticky($isSticky);
$entityManager = $this->getEntityManager();
$entityManager->persist($entity);
$entityManager->flush();
return $entity;
}