예제 #1
0
 public function editAction()
 {
     $id = (int) $this->params()->fromRoute('id', 0);
     $book = $this->getBookTable()->getBook($id);
     $form = new BookForm();
     $form->bind($book);
     $form->get('submit')->setAttribute('value', 'Edit');
     $request = $this->getRequest();
     if ($request->isPost()) {
         $form->setInputFilter($book->getInputFilter());
         $form->setData($request->getPost());
         if ($form->isValid()) {
             $this->getBookTable()->saveBook($book);
             return $this->redirect()->toRoute('book');
         }
     }
     return array('id' => $id, 'form' => $form);
 }
 /**
  * Edit Action
  * <br/> Responsible for :
  *       <br/>In case Get verb  -> Display Edit Exists Book Form
  *       <br/>In case Post verb -> Edit Exists book with new submitted details
  *                                 and updated book details into Database
  *                                 After Submit Book Form
  * @return ViewModel edit view
  */
 public function editAction()
 {
     $id = (int) $this->params()->fromRoute('id', 0);
     $book = $this->getBookTable()->getBook($id);
     $form = new BookForm();
     $form->bind($book);
     $form->get('submit')->setValue('Edit');
     $request = $this->getRequest();
     // Check If Request Is Post Verb
     if ($request->isPost()) {
         $form->setInputFilter($book->getInputFilter());
         $form->setData($request->getPost());
         if ($form->isValid()) {
             $this->getBookTable()->saveBook($book);
             // redirect to list of Books
             return $this->redirect()->toRoute('book');
         }
     }
     return new ViewModel(array('id' => $id, 'form' => $form));
 }