Sub Select mais rápido e correto?
Da onde você tirou isso?
  ----- Original Message ----- 
  From: Beto 
  To: CodeIgniter Brasil 
  Sent: Tuesday, February 03, 2009 1:19 PM
  Subject: Re: [CodeIgniter] dúvida sobre práticas


  Nao teria como vcfazer toda consulta via banco, com sub-select ? como todos 
falaram deve ser mais rapido e correto ;)

  []´s

  - - - - - - - - - - - - - - - - - - - - - 
  Luiz Alberto S. Ribeiro [ Beto ]
  http://beto.euqueroserummacaco.com



  2009/2/3 Bruno Barros <[email protected]>

    O controller está puxando o View principal e chamando o Model para
    gerar a listagem de usuários.

    Vamos supor que cada usuário (cada registro lido) eu tivesse que gerar
    uma outra lista de usuários que são amigos dele.
    Então eu teria que fazer uma nova pesquisa para gerar outra sub-listagem.

    Minha dúvida é como eu mando esta informação para o View. Se monto
    toda a tabela fora, ou se insiro uma linha que faz a segunda pesquisa
    e continua a fazer o segundo foreach.

    Ex:

           <?php
       foreach($listaItens as $row):


                   $nome = $row['nome'];

                   // faz a segunda pesquisa. esta listagem tem uma
    formatação específica
                   $lista_amigos= $this->meu_model->gera_lista($row['id']);

       ?>
       <tr>
       <td><?=$nome?></td>
       <td><?=$lista_amigos?></td>
       <td>&nbsp;</td>
       <td>&nbsp;</td>
       <td>&nbsp;</td>
       </tr>
       <?php
       endforeach;
       ?>


    2009/2/3 Vinicius Cruz <[email protected]>:

    > Isso tá me cheirando pog.. =D
    >
    > A primeira opção limou a função do controller. Me parece que um JOIN já
    > retornaria o status do usuário, não?
    >
    > Vinicius
    >
    > 2009/2/3 Bruno Barros <[email protected]>
    >>
    >> Pessoal,
    >> tenho uma dúvida sobre práticas.
    >>
    >> Tenho que gerar uma tabela no View, e cada linha desta tabela precisa
    >> de informações específicas, como o status deste usuários etc.
    >> Então cada linha retornada do BD gera outra pesquisa.
    >>
    >> É melhor eu colocar dentro da View:
    >> <?php
    >>    foreach($listaItens as $row):
    >>
    >>                $status= $this->meu_model->status_do_usuario($row['id']);
    >> // faz
    >> outra requisição no BD
    >>    ?>
    >>    <tr>
    >>    <td><?=$nome?></td>
    >>    <td><?=$status?></td>
    >>    </tr>
    >>    <?php
    >>    endforeach;
    >>    ?>
    >>
    >> ... ou ...
    >>
    >> Gerar toda a tabela dentro do Model e depois descarregar tudo na View?
    >>
    >>
    >> --
    >> []'s
    >> Bruno Barros
    >> [email protected]
    >>
    >> _______________________________________________
    >> Lista mailing list
    >> [email protected]
    >> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
    >
    >
    > _______________________________________________
    > Lista mailing list
    > [email protected]
    > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
    >
    >




    --

    []'s
    Bruno Barros
    [email protected]

    _______________________________________________
    Lista mailing list
    [email protected]
    http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br





------------------------------------------------------------------------------


  _______________________________________________
  Lista mailing list
  [email protected]
  http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
_______________________________________________
Lista mailing list
[email protected]
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br

Responder a