Ir para o conteúdo

 Voltar a Fórum do For...
Tela cheia

ORM e manipulação de dados

6 de Junho de 2012, 8:15 , por Desconhecido - | Ninguém seguindo este artigo por enquanto.
Visualizado 45 vezes
Olá gostaria que alguém mais experiente neste framework por favor me informasse como ele funciona com a parte de mapeamento-objeto-relacional (isso se há nele claro). Caso não haja algo como isso, como é feito a persistencia de dados quando se precisa de um escopo de transação e nele a persistencia envolve o uso de dados de mais de uma classe. (1:1, 1:* *:*). Seria de grande ajuda essas informações, Obrigado.

Autor: emmerson s


1Um comentário

  • 51b06d6eae66e2cfdfc361d418eea715?only path=false&size=50&d=404Luis Eugênio barbosa(usuário não autenticado)
    6 de Junho de 2012, 9:58

     

    Caro Emmerson,

    Não existe mapeamento-objeto-relacional no FormDin, isto talvez seja uma próxima etapa de melhorias, mas como já existem muitas frameworks que tratam disso, não sei se vale a pena entrar nesta área.

    A classe que o FormDin tem para manipulação de dados é a TPDOConnection nela tem o método

    beginTransaction() e commit() que podem ser utilizado para o controle de transação.

    Se voce estiver utilizando as classes DAO do exemplo de CRUD, a inclusão do veículo com transação seria assim:

    // Gravando o dado no banco de dados
    tb_veiculoDAO::beginTransaction(); // inicia a transação
    if( tb_veiculoDAO::insert($vo) )
    {
        $frm->setMessage('Veículo salvo com SUCESSO!');
        // chamar a ação limpar para limpar os campos após a gravação
        include('limpar.php');
        tb_veiculoDAO::commit(); // grava definitivamente
    }
    else
    {
        $frm->addError(Tb_veiculoDAO::getError());
        tb_veiculoDAO::rollBack(); // cancela a transação.
    }

    Ressalto que a camada de persistência, você pode utilizar qualquer outra framework de persistência, como por exemplo o Doctrine ou criar sua própria solução.

    Abraço.

Essa comunidade não possui posts nesse blog