Zend Framework DbTable insert () inserendo record due volte

Ho un'azione del controller come segue

public function reportcommentAction() { $comment_id = $this->getRequest()->comment_id; $blockedCommentTable = new Application_Model_DbTable_BlockedComments(); $blockedCommentTable->blockComment($comment_id, $this->user_id); } 

che effettua una chiamata al model dbTable blockComment () che assomiglia a questo

 class Application_Model_DbTable_BlockedComments extends Zend_Db_Table_Abstract { protected $_name = 'blocked_comments'; public function blockComment($comment_id, $blocked_by) { if (!empty($comment_id) && !empty($blocked_by)) { $data = arrays( 'comment_id' => $comment_id, 'blocked_by' => $blocked_by ); $this->insert($data); exit; } } 

Per qualche ragione, ho bisogno di quell'output; alla fine. Senza di esso ottengo 2 record inseriti anziché solo quello previsto.

Ho 3 campi nella tabella blocked_comments, cioè id, comment_id e bloccato da. Con l'istruzione exit in atto ottengo un record con i valori 1, 21, 1 come previsto. Senza la dichiarazione di output ottengo un record extra con i valori 2, 0, 1 per qualche motivo.

Ho lo stesso codice (senza l'output superflua) che funziona in altre parti del mio codice e non ho idea di cosa sta succedendo qui.

 The second time round the Request_Uri reports /us/account/report-comment/default.appcache?v=1 

Rimuovi l'attributo manifest nel tag HTML principale (in alto nella parte superiore) per sbarazzarti della seconda chiamata. L'instradamento delle applicazioni di Zend sembra essere kicking invece di servire il file statico. Ciò potrebbe essere dovuto al fatto che il file non esiste o potrebbe esistere su un path diverso.

Ho avuto un problema simile. Il motivo per cui ->insert stato chiamato due volte era a causa di questi:

 public function saveAction() { ... $result = $this->_bookModel->saveBook($data); if ($result) { $this->view->form = $form->reset(); $this->_helper->viewRenderer('index'); } 

Ho sostituito

 $this->_helper->viewRenderer('index'); 

con

 return $this->_helper->redirector('index'); 

e ha funzionato perfettamente.