Ultimamente venho utilizando bastante o Laravel para meus projetos pessoais e do trabalho. Sem dúvida é um framework fantástico e nesse período de utilização percebi que não é exagero o que dizem de bom sobre ele.

Hoje venho trazer uma dica bem simples a respeito da utlização do pacote Entrust com namespace. Ao utilizar as classes do entrust (normalmente Permission e Role) com namespace você pode ter dificuldade em fazer com que o Laravel encontre essas classes, resultando no seguinte erro: Class not found.

Quando tive esse problema achei que um $ composer dump-autoload resolveria o problema, mas me enganei. Tentei resolver o problema de todas as formas possíves, até que fui procurar no Google. Nas pesquisas que fiz, encontrei no Stack Overflow uma dúvida igual a que eu tinha , mas nenhuma resposta me ajudou. Fiz o que me restava: fuçar o código do pacote. Alguns segundos depois de fuçar as pastas e arquivos encontrei a solução !

A solução

Existe um arquivo de configuração dentro da pasta do pacote e nele tem um array com o alias do namespace da classe.

Para resolver basta inserir o namespace onde a classe se encontra, rodar o dump-autoload e pronto !

No início tive um pouco de dificuldade na utilização de namespaces no framework, pois tive que configurar no composer a utilização do autoload da PSR-0, mas depois de tudo configurado fica muito mais organizado e padronizado.

Um abraço e até o próximo post !