Preciso resgatar alguns registros e adiciona-los na mesma tabela, mas,
com o ID diferente, ou seja, estou duplicando o registro.
Para tal fiz uma consulta que me retorna 23 registros logo abaixo fiz
um foreach para percorrer os registros retornados e já inseri-los
novamente usando save(), só que quando eu executo o código usando
$this->MODEL->save( array( 'campo' => 'valores' ) );
O cake tenta atualizar os registros, não é isso que quero... E quando
tento assim
$this->MODEL->save( array( 'campo' => 'valores' ) );
$this->MODEL->create();
O cake cria 2000 e lá vai registros, o mais extranho é que quando eu
coloco um array para simular uma inserção ele retorna certo, só não
consegue adicionar.
Vai a cópia do meu método, Alguém faz idéia de como solucionar isso?
function admin_aplicar( $researches_id, $action_id )
{
// Is Allowed?
$this->checkSession();
// The title
$this->set( 'title', "Aplicar perguntas para enquete" );
$prova = 0;
if( empty( $researches_id ) )
{
// Show the message error
$this->Session->setFlash( 'Dados inválidos' );
// Redirect user
$this->redirect( '/admin/perguntas/'. $researches_id );
}else{
// Retrieve the research question
$researchQuestion = $this->Research->read( null,
$researches_id );
// Format the values
$dateTime = explode( " ", $researchQuestion['Research']
['created'] );
$date = explode( "-", $dateTime[0] );
$time = explode( ":", $dateTime[1] );
// Search aplication to extra research
$arrayConditions = array( 'Research.id != '.
$researches_id .'',
'Research.endDate' => $researchQuestion['Research']['endDate']/*,
'YEAR(Research.created)' => $date[0], 'MONTH(Research.created)' =>
$date[1], 'DAY(Research.created)' => $date[2],
'HOUR(Research.created)' => $time[0]/*, 'MINUTE(Research.created)' =>
$time[1]*/ );
$arrayFields = array( );
$researchData = $this->Research->findAll(
$arrayConditions,
$arrayFields );
// Loop's research related
foreach( $researchData as $research )
{
// Search the questions related
$arrayConditions = array( );
$arrayFields = array( );
$questionData =
$this->Question->findAll( $arrayConditions,
$arrayFields );
foreach ( $questionData as $question )
{
$this->Question->save( array(
'institutions_id' => $this-
>session_data( 'institutions_id' ), 'researchs_id' =>
$question['Question']['researchs_id'], 'question' =>
$question['Question']['question'] ) );
$this->Question->create();
/**/
$treta[] = array(
'institutions_id' => $this-
>session_data( 'institutions_id' ), 'researchs_id' =>
$question['Question']['researchs_id'], 'question' =>
$question['Question']['question'] );
}
}
}
$this->set( 'teste', $treta );
}
Falopa!
--~--~---------~--~----~------------~-------~--~----~
Recebeu esta mensagem porque está inscrito em Grupo "Cake PHP Português" do
Grupos Google.
Para enviar mensagens para este grupo, envie um email para
[email protected]
Para anular a inscrição neste grupo, envie um email para [EMAIL PROTECTED]
Para mais opções, visite este grupo em
http://groups.google.com/group/cake-php-pt?hl=pt-PT
-~----------~----~----~----~------~----~------~--~---