zenfra 0 Denunciar post Postado Novembro 1, 2009 Boa tarde, Gostaria de saber se alguém poderia me explicar o a utilização da view -> element no cake. Estou iniciando na utilização desse framework e estou fazendo um site onde preciso utilizar os menus lateral e superior em algumas paginas. Esses menus são dinâmicos e pode ser atualizados através de um módulo administrativo do site. Queria saber como consigo listar os registros existentes em uma tabela que representa o menu da aplicação com seus respectivos links para navegação no site em um element para requisitar posteriormente nas views que precisarem. Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
Sérgio Macedo 0 Denunciar post Postado Novembro 2, 2009 Uma sugestão que te dou é você montar seu layout e consultar qual elemento utilizar podendo montar algumas consultas p/ cada tipo de necessidade. <?php if ($grupo == 1) { echo $this->element('menu1'); } else { echo $this->element('menu2'); } ?> Compartilhar este post Link para o post Compartilhar em outros sites
zenfra 0 Denunciar post Postado Novembro 2, 2009 Você diz criar consultas dentro do próprio element? Eu não conseguiria por exemplo utilizar um método já existem no cotroller de uma determinada tabela que liste todos os registros dessa tabela? A partir dai eu criaria uma lista e depois aplicaria o estilo necessário. Eu não estou conseguindo visualizar como montar esse element, como chamar eu até já saquei... Compartilhar este post Link para o post Compartilhar em outros sites
Sérgio Macedo 0 Denunciar post Postado Novembro 2, 2009 O exemplo que eu citei... 1º No controller você seta a variável da consulta; 2º Na view você pode definir qual layout usar... ou até mesmo utilizar está variável setada dentro do seu layout e lá fazer as consultas p/ definir qual element usar... No meu entendimento o element é estático... como você disse que terá vários menus... basta definir qual menu usar para cada tipo de grupo de usuário!!! Compartilhar este post Link para o post Compartilhar em outros sites
lucaswxp 22 Denunciar post Postado Novembro 2, 2009 O elements também podem ser dinamicos. Basta setar as consultas normalmente no controller. Veja um exemplo: ELEMENT: <?php foreach($dados as $dado): echo $dado; // Item do menu endforeach; ?> LAYOUT ... <?php echo $this->element('myelement'); ?> // Chama o elemento ... app_controller: ... function beforeRender(){ $this->set('dados' , $this->paginate()); // Apenas um exemplo demonstrando como passar informações para a view - element } ... Aqui setamos $dados para a view (element), e pode fazer o que quiser com ela dentro deste element (e dentro do layout também). É possivel ter um controller maior de como/quando passar os dados, basta utilizar condições normalmente. E se necessitar de algum dado, procure em $this->params Compartilhar este post Link para o post Compartilhar em outros sites
zenfra 0 Denunciar post Postado Novembro 2, 2009 Bacana, Eu testei aqui essa sua explicação Lucas... funcionou legal.. Agora se eu setar por exemplos a variável dados em mais de um controller diferente da pau? Tipo tenho os controllers posts e categorias.. se em ambas eu definir posts dessa forma ai e chamar em um element? Valeu! Compartilhar este post Link para o post Compartilhar em outros sites
lucaswxp 22 Denunciar post Postado Novembro 2, 2009 Creio que a ultima irá sobrescrever a primeira (nao testei). Compartilhar este post Link para o post Compartilhar em outros sites