本文整理汇总了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;
}