Rapaz, no inicio tbm pensei que isso seria util, mas depois percebi que nao
tinha motivos para uma aplicacao ter tantos subdiretorios.

Para deixar a aplicacao modular alterei o index.php para reconhecer várias
aplicacoes no mesmo sistema.

Ai tenho ...

Site.com/controller/action - que chama application padrao
Site.com/application2/controller/action - chama uma application2, e por ai
vai. A application pode ser qualquer nome. E como alterei a rota defaul das
outras aplicacoes, posso ter subdiretorio em cada application com tanto que
um subdiretorio nao tenha o mesmo nome de uma application.

Dificilmente vc vai precisar passar desse esquema.
Em 20/04/2012 09:31, "Juarez Junior" <[email protected]> escreveu:

> Não seria mais fácil criar uma rota para cada diretório? Digo isto pq
> uso aqui no projeto da empresa.
>
> [s]
>
> 2012/4/20 Douglas J.A.M <[email protected]>:
> > Bom dia pessoal,
> >
> > Estou apanhando aqui para fazer um regex para atender de maneira
> genérica a
> > leitura de todas os meus controllers em seus subdiretorios para
> > poder ler por exemplo
> >
> > http://sistema/
> > http://sistema/controller
> > http://sistema/pasta/controller
> > http://sistema/pasta/pasta/controller
> > http://sistema/pasta/pasta/pasta/controller
> >
> > Gostaria de fazer uma rota única para todos meus controllers, sendo que
> na
> > segunda rota deve ser:
> > n diretorios separados por virgula, e a ultima palavra é o controller,
> caso
> > tenha somente uma palavra, o directory é o default o o controlleré o
> exibido
> > na url.
> > Creio eu que lógica está correta mas uma excessão está sendo gerada:
> >
> > ErrorException [ Warning ]: preg_match() [<a
> > href='function.preg-match'>function.preg-match</a>]: Compilation failed:
> > range out of order in character class at offset 55
> >
> >
> > Route::set('default', '(<action>)', array('action' => 'login|logout'))
> >         ->defaults(array(
> >             'directory' => 'sistema',
> >             'controller' => 'autenticacao',
> >             'action' => 'index',
> >         ));
> >
> > Route::set('aplicacao', '(<directory>)(<controller>(/<action>(/<id>)))',
> >         array('directory' => '[[A-Za-z]+/?]*', // palavras de no minimo 1
> > caractere separadas por 0 ou 1 "/" a cada palavra, pode se ter 0 ou n-1
> > palavras
> >               'controller' => '[A-Za-Z]+', // ultima ou unica palavra de
> no
> > minimo 1 caractere
> >               'action' => 'ver|novo|editar|excluir',
> >               'id' => 'd+'))
> >         ->defaults(array(
> >             'directory' => 'sistema',
> >             'controller' => 'inicio',
> >             'action' => 'index',
> >         ));
> >
> > --
> > Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana
> Php"
> > dos Grupos do Google.
> > Para ver esta discussão na web, acesse
> > https://groups.google.com/d/msg/kohana-php/-/NA1xzeDp6xsJ.
> > Para postar neste grupo, envie um e-mail para
> [email protected].
> > Para cancelar a inscrição nesse grupo, envie um e-mail para
> > [email protected].
> > Para obter mais opções, visite esse grupo em
> > http://groups.google.com/group/kohana-php?hl=pt-BR.
>
>
>
> --
> Juarez Junior - [email protected]
> http://twitter.com/juareznjunior
> http://juareznjunior.wordpress.com/
>
> --
> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana
> Php" dos Grupos do Google.
> Para postar neste grupo, envie um e-mail para [email protected].
> Para cancelar a inscrição nesse grupo, envie um e-mail para
> [email protected].
> Para obter mais opções, visite esse grupo em
> http://groups.google.com/group/kohana-php?hl=pt-BR.
>
>

-- 
Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana Php" dos 
Grupos do Google.
Para postar neste grupo, envie um e-mail para [email protected].
Para cancelar a inscrição nesse grupo, envie um e-mail para 
[email protected].
Para obter mais opções, visite esse grupo em 
http://groups.google.com/group/kohana-php?hl=pt-BR.

Responder a