コード例 #1
0
 /**
  * @param Article $articleEntity
  * @return \Blog\Service\ArticleService
  */
 public function createArticle(array $data)
 {
     /** Le billet **/
     $articleEntity = new Article();
     $em = $this->getServiceLocator()->get('Doctrine\\ORM\\EntityManager');
     $category = $em->find('Blog\\Model\\Entity\\Category', $data['category']);
     // Données du formulaire
     $articleEntity->setTitre($data['titre']);
     $articleEntity->setContenu($data['content']);
     $articleEntity->setCategory($category);
     $articleEntity->setTags($data['tags']);
     // Données à récupérer
     $articleEntity->setAuthor($this->getServiceLocator()->get('BlogUserService')->getCurrentUserEntity());
     // Création du billet
     $newArticle = $this->getServiceLocator()->get('ArticleRepository')->createArticleEntity($articleEntity);
     /** Les tags **/
     $tags = explode(' ', $data['tags']);
     foreach ($tags as $t) {
         $tagEntity = new Tag();
         $tagEntity->setArticle($newArticle);
         $tagEntity->setName($t);
         $this->getServiceLocator()->get('TagRepository')->createTagEntity($tagEntity);
     }
     return $this;
 }
コード例 #2
0
 /**
  * {@inheritDoc}
  */
 public function setTags($tags)
 {
     $this->__initializer__ && $this->__initializer__->__invoke($this, 'setTags', array($tags));
     return parent::setTags($tags);
 }