Configurando CakePHP no Komodo IDE
Eu sou usuário do Komodo IDE, um editor baseado na plataforma do Mozilla. Como recentemente tenho trabalhado bastante com CakePHP, acabei criando um ambiente de desenvolvimento bem legal e vou compartilhar com vocês (não reinventei a roda, mas vou dar mais algumas dicas).
Umas das principais funções de uma IDE é o auto-complete, sem isto é preferível utilizar um editor qualquer. Para fazer com que o Komodo identifique as classes de Cake você deverá informar para a IDE aonde se encontram os arquivos do framework. Portanto, vá até Edit -> Preferences -> Languages -> PHP. Adicione o diretório raiz do core do CakePHP (local onde se encontram todas as classes do framework) e dê “Ok”. É interessante também você colocar o diretório do /vendors, caso exista alguma biblioteca externa no seu projeto.
Mas isto ainda não resolve tudo. Infelizmente, por ser um framework totalmente dinâmico, é impossível para a IDE identificar quais são os Helpers, Components e variáveis setadas pelo Controller. Ainda não inventaram nada que identifique as propriedades da classe para carregar a interface do objeto. Para falar a verdade, acredito que nunca irão inventar. Mas então, como fazemos?
Para os Components e Behaviors , podemos criar uma função privada (ou colocar underscore no início) instanciando todos os objetos que queira ter o auxilio, um exemplo de um Controller:
<?php function __completeComponents(){ $this->Acl = new AclComponent(); $this->Auth = new AuthComponent(); $this->Cookie = new CookieComponent(); $this->Email = new EmailComponent(); $this->RequestHandler = new RequestHandlerComponent(); $this->Security = new SecurityComponent(); $this->Session = new SessionComponent(); } ?>
Para os Helpers, utilizamos outra abordagem. Crie um arquivo PHP contendo o conteúdo abaixo e adicione ele como se fosse uma biblioteca do PHP (imagem acima):
<?php $ajax = new AjaxHelper(); $cache = new CacheHelper(); $form = new FormHelper(); $html = new HtmlHelper(); $javascript = new JavascriptHelper(); $number = new NumberHelper(); $session = new SessionHelper(); $text = new TextHelper(); $time = new TimeHelper(); ?>
Pronto, temos auto-complete em toda a nossa estrutura MVC. Meio gambiarra mas é muito útil. Diminui bastante as idas em API para lembrar de uma função, a ordem dos parâmetros e/ou uma pequena descrição.
Ps: Estou testando o Gist-it pois tomei uma azia com caracteres <> no Geshi
Tags: cakephp, facilidade, komodoComentários (2)
-
001
Tiago Dornelas
em 19/06/2009 10:12:54Cara, os seus códigos do gist não estão mais aparecendo… Tem como vc revisar isso, pois me interessei bastante pelo Komodo. Valeu!
-
002
João José Pedrini
em 19/06/2009 13:36:19Olá Tiago,
Já fiz as alterações! Mas recomendo você a dar uma olhada também no Add-on de CakePHP para o Komodo, é bem mais interessante e possui um futuro promissor. Ainda esta faltando muita coisa para ele ficar muito bom, mas é o suficiente.
http://community.activestate.com/node/2794
Abraços.





