Eu acabei de visitar o https://github.com/erickpatrick/CI--Packages
E vi que lá o exemplo de Controller ainda está com 

$this->layout->show('layout');

Qua a diferença para $this->render()?

Abraço
Ademir

-----Mensagem original-----
De: [email protected]
[mailto:[email protected]] Em nome de Erick Patrick
Enviada em: sexta-feira, 11 de maio de 2012 15:03
Para: [email protected]; CodeIgniter Brasil
Assunto: Re: [CodeIgniter] HTML Header + Template Parser

Jairo e Ademir,  

Enviei para o Github o exemplo de aplicação
(https://github.com/erickpatrick/CI--Packages/tree/master/layout/sample-appl
ication), como prometido. É uma simples aplicação que faz o cálculo de
algumas estatísticas em cima da Lotofácil (sim, gosto de jogos de azar xP
Vocês verão um pouco da loucura que rola solta na minha cabeça eheh).

Está praticamente todo comentado. Vocês verão um exemplo do meu
MY_Controller e do MY_Model (que, para cada aplicação que crio, mudo o nome,
caso tenha falha que permita algum hack, dificulta descobrir o nome do
arquivo).

O uso do MY_Controller junto do package Layout ficou bem interessante,
porque, dentro do próprio controller posso chamar, por exemplo
$this->header(), $this->nav(), $this->footer(), etc, passando o caminho para
as respectivas parciais, montando o layout, baseado no Template que estou
usando ($this->render()).

O template é um simples arquivo que imprime as variáveis que contém o html a
ser montado. Se o template tem header, nav, body e footer, o conteúdo desse
template terá de ser a impressão dessas 4 variáveis. Exemplo:
> <?php echo $header, $nav, $body, $footer ?>

As parciais também podem ter suas próprias variáveis, como qualquer outra
view que o CodeIgniter tem, basta passar os dados para ela.

Vocês verão que o funcionamento é bem simples e que dá um ganho considerável
no sentido de DRY.

Qualquer dúvida, sugestão, etc. Mandem por aqui ou enviem um relatório de
bug pelo próprio Github. Deem fork e vejam o que pode ser aprimorado.

Att.,  

--
Erick Patrick
Sent with Sparrow (http://www.sparrowmailapp.com/?sig)


On Friday, May 11, 2012 at 2:10 PM, Erick Patrick wrote:

> Jairo,
>  
> Pode ser que façamos o mesmo, mesmo. Talvez eu não tenha entendido 
> direito o que você escreveu. Meros problemas de comunicação ;P
>  
> Bom, eu fiquei cansado de ficar chamando várias vezes os vários
$this->load->view() e criei essa library básica. Preciso até atualizar o
código daí, que tem coisa até demais.
>  
> Também uso sub-folders para assuntos distintos. Enviarei um exemplo mais
"recheado" que usa essa library, para facilitar o entendimento, lá para o
Github mesmo.
>  
> E, sim, não gosto muito de pré-requisitos para os packages. Ví muitos que
injetam muita coisa que sequer usam direto. Ou seja, a aplicação vira um
bloatware de primeira. Como você pode ver, o package per se, é só 1 arquivo
com meros 1.35kb. Praticamente não influencia na performance da aplicação.
>  
> Att.,
>  
> --
> Erick Patrick
> Sent with Sparrow (http://www.sparrowmailapp.com/?sig)
>  
>  
> On Friday, May 11, 2012 at 1:57 PM, Jairo wrote:
>  
> > Oi Erick,
> >  
> > Tenho a impressão que faço o mesmo que vc., só que "na mão". A 
> > diferença é que vc. usa a library layout.php . Os outros dois 
> > diretórios ( controllers-example e views-example ) é o que uso. 
> > Gostei também, e adotei, a separação de sub-folders 
> > http://codeigniter.com/user_guide/general/views.html para assuntos 
> > distintos ( tipo clientes, produtos, usuários, etc... ). Preferi 
> > sempre separar.
> >  
> > O seu exemplo test_controller.php , seria o "principal" da aplicação.
> >  
> > Gostei das suas "parciais", baixei o package pra ver. Também parece 
> > que não fica "preso" a nenhuma camada, templates, whatever ... e eu 
> > acho isso bom.
> > Liberdade no layout, sem dependências, com código organizado ...
> >  
> > Vou tentar aplicar aqui num exemplo. O "principal" é moleza, quero 
> > ver o uso alterando os "contents".
> >  
> > Obrigado,
> >  
> > --
> > Abs,
> >  
> > Jairo
> >  
> >  
> > On Fri, 2012-05-11 at 13:21 -0300, Erick Patrick wrote:
> > > Jairo,
> > >  
> > >  
> > > Mesmo em sistemas, prefiro fazer com parciais, simplesmente pelo 
> > > fato da organização. Se eu quiser mudar algo, sei exatamente onde 
> > > mudar e não terei de substituir em todo e cada arquivo.
> > >  
> > >  
> > > Para sistemas pequenos, até pode ser que esse jeito que você falou 
> > > funcione (por um tempo). Porém, para sistemas que precisam crescer 
> > > e tem várias mãos trabalhando nele, a organização sempre é
fundamental.
> > >  
> > >  
> > > Att.,
> > >  
> > >  
> > > --
> > > Erick Patrick
> > > Sent with Sparrow
> > >  
> >  
> >  
> >  
> >  
> >  
> > _______________________________________________
> > [email protected] (mailto:[email protected]) 
> > http://www.codeigniter.com.br 
> > http://mail.codeigniter.com.br/mailman/listinfo/lista_codeigniter.co
> > m.br
> >  
> > ---------------------------
> > Oportunidade de negócio
> > http://www.franquiasargohost.net
> > ---------------------------
> >  
> >  
> >  
>  
>  

_______________________________________________
[email protected]
http://www.codeigniter.com.br
http://mail.codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br

---------------------------
Oportunidade de negócio
http://www.franquiasargohost.net
---------------------------
-----
Nenhum vírus encontrado nessa mensagem.
Verificado por AVG - www.avgbrasil.com.br
Versão: 2012.0.2171 / Banco de dados de vírus: 2425/4991 - Data de
Lançamento: 05/11/12


_______________________________________________
[email protected]
http://www.codeigniter.com.br
http://mail.codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br

---------------------------
Oportunidade de negócio
http://www.franquiasargohost.net
---------------------------

Responder a