Socorro, quase tudo parou de funcionar, heheh Onde eu posto um ticket no track do cake?
Tive que fazer uma gambiarra no fonte do cake para que minha aplicação continuasse a funcionar :( Agora o problema é o seguinte, após inserir algo na base, o cake pega (ou tenta pegar) o id desse registro com a função lastInsertId(). Após a atualização para versão 6381 do branches, ele tá gerando o seguinte sql para pegar o último id: SELECT last_value AS max FROM "public" (public é o nome do schema.) sendo com o correto seria SELECT last_value AS max FROM "[model]_id_seq" Fiz a seguinte gambiarra no arquivo "repo\branches\1.2.x.x\cake\libs\model\datasources\dbo\dbo_postgres.php" function getSequence($table, $field = 'id') { if (is_object($table)) { $table = $this->fullTableName($table, false); } //aqui começa a gambiarra. :( /*if (isset($this->_sequenceMap[$table]) && isset($this->_sequenceMap[$table][$field])) { return $this->_sequenceMap[$table][$field]; } else {*/ //aqui termina :) return "{$table}_{$field}_seq"; //} } Achei o seguinte ticket relacionado com esse trecho de código que eu alterei.: https://trac.cakephp.org/ticket/3886 2008/1/11 wc <[EMAIL PROTECTED]>: > Agora sim está funcionando. > > Muito obrigado pela ajuda. > > 2008/1/11 Juan Basso <[EMAIL PROTECTED]>: > > > > Boas novas, amigo. > > > > Saiu hoje a correção da função update e delete do postgres, mssql e > > sqlite. :) > > > > Está no branch do SVN do Cake. A revisão é a 6361: Refactoring fixture > > handling and Model tests, fixing UPDATE and DELETE queries for other > > databases, fixes #3794. Only forcing 'test_suite' prefix on default > > database connection, fixes #3873 > > > > Para ver o que significa os bugs: https://trac.cakephp.org > > > > Para baixar o código fonte: SVN > > https://svn.cakephp.org/repo/branches/1.2.x.x/ > > > > > > Juan Basso > > > > On 10 jan, 22:32, Juan Basso <[EMAIL PROTECTED]> wrote: > > > Aconselho você a dar uma analisadinha no código fonte também. O código > > > do Cake é bem simples. > > > > > > Particularmente, eu prefiro ler o código fonte do que a documentação. > > > Assim da para ver como funcionam os fornos da padaria. :) > > > > > > Juan Basso > > > > > > On 10 jan, 17:27, wc < [EMAIL PROTECTED]> wrote: > > > > > > > > > > > > > Sim, estou usando a versão 1.2.0.6311-beta. > > > > > > > Que legal, vo falar pra minha chefe que o sistema vai funcionar > > assim que > > > > terminarem de homologar o cake..... ai minha orelha.... heheh > > > > > > > Acho que agora é hora de por em pratica as aulas de inglês e entrar > > no irc. > > > > > > > mas antes vo tentar dar um rollback pra versão anterior do cake 1.2para > > > > ver > > > > se antes funcionava. > > > > > > > On Jan 10, 2008 1:58 PM, Juan Basso <[EMAIL PROTECTED]> wrote: > > > > > > > > Aparentemente você está fazendo de maneira correta. Isso deve ser > > > > > algum bug do Cake. Você está usando a versão mais nova? > > > > > > > > E sinta-se feliz, se for um bug, logo arrumarão, pois hoje > > começaram a > > > > > "homologação" do cake para Postgres, ou seja, os arquivos de > > testes > > > > > estão sendo reconfigurados para usar com postgres para verificar > > todos > > > > > os comandos e tal. > > > > > > > > Porém, o unbind deveria funcionar, visto que é uma função do > > Model.php > > > > > e não do driver Postgres. > > > > > > > > Juan Basso > > > > > > > > On 10 jan, 09:46, wc <[EMAIL PROTECTED]> wrote: > > > > > > Problema com update no postgresql. > > > > > > > > > Bom dia. > > > > > > > > > O cake está gerando o seguinte comando update para o método > > edit() do > > > > > > controller pessoas: > > > > > > UPDATE "pessoas" AS "Pessoa" > > > > > > LEFT JOIN "instituicoes" AS "Instituicao" > > > > > > ON ("Pessoa"."instituicao_id" = "Instituicao"."id") > > > > > > LEFT JOIN "cursos" AS "Curso" > > > > > > ON ("Pessoa"."curso_id" = "Curso"."id") > > > > > > LEFT JOIN "estados" AS "Estado" > > > > > > ON ("Pessoa"."estado_id" = "Estado"."id") > > > > > > LEFT JOIN "cidades" AS "Cidade" > > > > > > ON ("Pessoa"."cidade_id" = "Cidade"."id") > > > > > > (...) > > > > > > Ao tentar executar esse sql, o postgres gera a seguinte mensagem > > de > > > > > erro: > > > > > > ERROR: syntax error at or near "AS" at character 18 > > > > > > > > > Como eu faço para que o cake crie o update sem o alias para > > tabela e > > > > > > sem esses joins? > > > > > > > > > Ele cria o sql acima mesmo eu tento colocado o seguinte código: > > > > > > $this->Pessoa->recursive = -1; > > > > > > $this->Pessoa->unbindModel (array('belongsTo'=> > > > > > > array('Instituicao', 'Curso', 'Cidade', 'Estado')), false); > > > > > > $campos = array('nome' ,'nomemeio' ,'sobrenome' ,'inscrito_puic' > > > > > > > > ,'rua' ,'numero' ,'complemento' , 'bairro' , 'estado_id' > > ,'cidade_id' > > > > > > ,'cep' , 'telefone' ,'nomecompleto' ,'instituicao_id'); > > > > > > if ($this->Pessoa->save($this->data, true, $campos)) { > > > > > > > > > Vendo a documentação do update > > > > > > ( http://api.cakephp.org/1.2/dbo__source_8php-source.html#l01287 > > ), > > > > > > encontrei as seguintes linhas: > > > > > > 01317 $alias = $this->name($model->alias); > > > > > > 01318 $joins = implode(' ', $this->_getJoins($model)); > > > > > > > > > Por favor, não me digam que terei que fazer um update > > manualmente, > > > > > hehehe. > > > > > > > > > -- > > > > > > :wq > > > > > > *************************************************** > > > > > > * Wiliam Camilo de Andrade * > > > > > > * wc.sama arroba gmail.com * > > > > > > * Bacharelado em Informática - 04 * > > > > > > * Universidade de São Paulo - ICMC - São Carlos * > > > > > > *************************************************** > > > > > > > > ------------------------------------------------------------------------ > > > > > > "Por que o Mário foi ao psicólogo? > > > > > > Porque ele tava passando por uma fase difícil!" > > > > > > > > > "São necessários 42 músculos para socar alguém e apenas 4 para > > > > > > estender meu dedo médio e mandá-lo para aquele lugar." > > > > > > > > >http://grad.icmc.usp.br/~wc/google.jpg<http://grad.icmc.usp.br/%7Ewc/google.jpg> > > <http://grad.icmc.usp.br/%7Ewc/google.jpg ><-- > > > > > "o que vamos fazer hoje a noite??" > > > > > > > > > Feira da fruta é a feira mais cara > > > > > > A onde só da "pilão" > > > > > > Tem a feira tamanho família > > > > > > Tem até a feira do melão > > > > > > > > ------------------------------------------------------------------------ > > > > > > > -- > > > > :wq > > > > *************************************************** > > > > * Wiliam Camilo de Andrade * > > > > * wc.sama arroba gmail.com * > > > > * Bacharelado em Informática - 04 * > > > > * Universidade de São Paulo - ICMC - São Carlos * > > > > *************************************************** > > > > > > ------------------------------------------------------------------------ > > > > "Por que o Mário foi ao psicólogo? > > > > Porque ele tava passando por uma fase difícil!" > > > > > > > "São necessários 42 músculos para socar alguém e apenas 4 para > > estender meu > > > > dedo médio e mandá-lo para aquele lugar." > > > > > > > http://grad.icmc.usp.br/~wc/google.jpg<http://grad.icmc.usp.br/%7Ewc/google.jpg><-- > > "o que vamos fazer hoje a > > > > noite??" > > > > > > > Feira da fruta é a feira mais cara > > > > A onde só da "pilão" > > > > Tem a feira tamanho família > > > > Tem até a feira do melão > > > > > > ------------------------------------------------------------------------- > > Ocultar texto entre aspas - > > > > > > > - Mostrar texto entre aspas -- Ocultar texto entre aspas - > > > > > > - Mostrar texto entre aspas - > > > > > > > > > -- > > :wq > *************************************************** > * Wiliam Camilo de Andrade * > * wc.sama arroba gmail.com * > * Bacharelado em Informática - 04 * > * Universidade de São Paulo - ICMC - São Carlos * > *************************************************** > ------------------------------------------------------------------------ > "Por que o Mário foi ao psicólogo? > Porque ele tava passando por uma fase difícil!" > > "São necessários 42 músculos para socar alguém e apenas 4 para estender > meu dedo médio e mandá-lo para aquele lugar." > > http://grad.icmc.usp.br/~wc/google.jpg > <http://grad.icmc.usp.br/%7Ewc/google.jpg> <-- "o que vamos fazer hoje a > noite??" > > Feira da fruta é a feira mais cara > A onde só da "pilão" > Tem a feira tamanho família > Tem até a feira do melão > ------------------------------------------------------------------------ > -- :wq *************************************************** * Wiliam Camilo de Andrade * * wc.sama arroba gmail.com * * Bacharelado em Informática - 04 * * Universidade de São Paulo - ICMC - São Carlos * *************************************************** ------------------------------------------------------------------------ "Por que o Mário foi ao psicólogo? Porque ele tava passando por uma fase difícil!" "São necessários 42 músculos para socar alguém e apenas 4 para estender meu dedo médio e mandá-lo para aquele lugar." http://grad.icmc.usp.br/~wc/google.jpg<http://grad.icmc.usp.br/%7Ewc/google.jpg><-- "o que vamos fazer hoje a noite??" Feira da fruta é a feira mais cara A onde só da "pilão" Tem a feira tamanho família Tem até a feira do melão ------------------------------------------------------------------------ --~--~---------~--~----~------------~-------~--~----~ 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 cake-php-pt@googlegroups.com 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 -~----------~----~----~----~------~----~------~--~---