/**
  * Creates a blog post
  *
  * @parmam void
  * @return mixed {Zend\Http\PhpEnvironment\Response, ViewModel}
  * @throws AccessProhibitedException
  **/
 public function createAction()
 {
     $this->_checkAcl('create');
     $userService = new UserService($this->_em);
     $auth = $userService->getAuthService();
     $user = $userService->findById($auth->getIdentity()->getId());
     $post = new Post();
     $post->setDateAdded(new DateTime());
     $post->setUser($user);
     $form = new PostForm();
     $form->bind($post);
     $categoryService = new CategoryService($this->_em);
     $form->setCategoryList($categoryService->getAll());
     $service = new PostService($this->_em);
     $service->setForm($form);
     $request = $this->getRequest();
     if ($request->isPost()) {
         if ($service->save($request->getPost())) {
             $params = array('controller' => 'admin', 'action' => 'index');
             return $this->redirect()->toRoute('blog/default', $params);
         }
     }
     return new ViewModel(array('form' => $form, 'messages' => $this->_postService->getMessages(PostService::MSG_NOTICE), 'errors' => $this->_postService->getMessages(PostService::MSG_ERROR)));
 }
 /**
  * @param	Post $post The post object to add.
  */
 protected function doAddPost($post)
 {
     $this->collPosts[] = $post;
     $post->setUser($this);
 }
    $user = new User();
    $user->setUsername($username);
    // save user
    $user->save();
    writeln($user);
}
foreach (array('Web', 'Life', 'Open Source', 'PHP') as $value) {
    $category = new Category();
    $category->setName($value);
    $user = UserQuery::create()->findPk(rand(1, 3));
    $category->setUser($user);
    // save category
    $category->save();
    // create action
    $actionManager->createAction($category->getUser(), Category::CREATE_CATEGORY, $category);
    writeln($category);
}
for ($i = 0; $i <= 20; $i++) {
    $post = new Post();
    $post->setTitle('Post title ' . $i);
    $post->setBody('Post body ' . $i);
    $user = UserQuery::create()->findPk(rand(1, 3));
    $post->setUser($user);
    $category = $user = CategoryQuery::create()->findPk(rand(1, 9));
    $post->setCategory($category);
    // create post
    $post->save();
    // create action
    $actionManager->createAction($post->getUser(), Post::CREATE_POST, $post, $post->getCategory());
    writeln($post);
}