Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

DaRkShAfT

Zend_Db_Table_Abstract

Recommended Posts

Oi,

 

Estou utilizando a class Zend_Db_Table_Abstract como extends do meu model e está acontecendo o seguinte:

 

No método:

 

function create($params) {

$row = $this->createRow();

...

$row->save();

 

$id = $this->_db->lastInsertId();

return $id;

}

 

ele me retorna sempre 0! aparentemente está tudo correcto, e já testei fazendo o seguinte: $id = $row->save(); desta maneira ele retorna o $id certo.

 

só para compreender o porquê de $this->_db_lastInsertId(); não retornar o id!

 

Valeu[]

Compartilhar este post


Link para o post
Compartilhar em outros sites

99% de certeza que você está fazendo confusão. Poste a classe completa (a que estende Zend_DbTable_Abstract).

 

Carlos Eduardo

 

<?php
class Model_Page extends Zend_Db_Table_Abstract {
/**
 * the default table name
 */
protected $_name = 'cms_pages';

protected $dependentTables 	= array('Model_ContentNode');
protected $_referenceMap	= array(
	'Page' => array(
		'columns'		=>	array('parent_id'),
		'refTableClass'	=>	'Model_Page',
		'refColumns'	=>	array('id'),
		'onDelete'		=>	self::CASCADE,
		'onUpdate'		=>	self::RESTRICT
	)
);

public function createPage($name, $namespace, $parentId=0)
{
	// create the new page
	$row = $this->createRow();
	$row->name = $name;
	$row->namespace = $namespace;
	$row->parent_id = $parentId;
	$row->date_created = time();
	$id = $row->save();

	// now fetch the id of the row you just created and return it
	//$id = $this->_db->lastInsertId();

	return $id;
}
}

 

Oi,

 

Eu acho que não.. Repara no método createPage()

 

[]

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo.

 

Modifique seu código, para efeito de debug, e adicione o seguinte:

 

	$id = $row->save();
	Zend_Debug::dump($id, 'Valor de $id');
	exit;

 

Poste aqui o que aparecer.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.