Hum .. não gostei ;( Não tinha percebido um problema com arquivos estáticos (css, js, etc) causado pelo nome da application. Preciso de uma classe que centralize os assets e midias.
Em 20 de abril de 2012 13:09, felipe bastos <[email protected]> escreveu: > Por enquanto está assim: > > index.php > > //pega o candidato a application, que também pode ser um controller > list($void, $subpath, $application) = explode('/', > $_SERVER['REQUEST_URI']); > > //se existir é um application, senão é um controller do application default > $application = !empty($application) && > file_exists('applications/'.$application) > ? 'applications/'.$application > : 'applications/application'; > > As pastas application > > /applications/application <--- default > /applications/admin <-- outra application > /applications/blog <-- outras application > /applications/classificados <-- outras application > > bootstrap.php <-- de cada application (a application default segue o > padrão do kohana) > > Kohana::init(array( > 'base_url' => '/blog/', <--- nome da application > > Kohana::init(array( > 'base_url' => '/admin/', <--- nome da application > > Rotas default da application blog > > Route::set('default', '(<application>(/<controller>(/<action>(/<id>))))', > array( > 'application' => 'blog' > )) > ->defaults(array( > 'controller' => 'welcome', > 'action' => 'index', > )); > > Cada application não default deve seguir este padrão. > > Aí meu sistema tem .. > > site.com/controller/action/id <--- application default é acionada > site.com/blog/controller/action/id <--- application blog é acionada > site.com/admin/controller/action/id <--- application admin é acionada > > E por aí vai. Você pode acrescentar quantas applications quiser, com tanto > que o nome das aplpications não choque com o nome dos controllers da > application default.. > > Isso eu fiz correndo, só para ver se funcionava legal. A idéia era ter > módulos integrados no mesmo site, sem usar o modules ou fazer "aplicações > descontextualizadas" :D > > Bom, agora tem mais uma opção. > > Em 20 de abril de 2012 11:36, Guilherme Maule > <[email protected]>escreveu: > > tranquilo! >> >> valeu.. >> >> Att, >> Guilherme Maule. >> >> *Enviado de meu iPhone. >> >> Em 20/04/2012, às 11:33, felipe bastos <[email protected]> escreveu: >> >> Estou mobile agora .. >> >> Mas em cada application eu alterei a route default acrescentando a >> variavel "application" no mesmo estilo da variavel de diretorio. >> >> E no index.php eu pego o URI e descubro qual application devo chamar .. >> >> $application ... "applications/nome_da_application" >> >> Eu criei um topico a no maximo 15 dias sobre sistemas multi applications >> .. deve ta recente no historico do grupo >> Em 20/04/2012 11:23, "Guilherme Maule" <[email protected]> >> escreveu: >> >>> Felipe, >>> >>> Teria como voce postar aqui a route como ficou? >>> >>> Obrigado! >>> >>> Abraços.. >>> >>> Em 20 de abril de 2012 11:15, felipe bastos <[email protected]>escreveu: >>> >>>> 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. >>>> >>> >>> >>> >>> -- >>> >>> Att, >>> *Guilherme Maule dos Reis* >>> *Web Designer * >>> >>> 43 - 9129 1400 >>> >>> >>> -- >>> 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. >> >> -- >> 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. >> > > > > -- > http://felipebastosweb.com.br > http://twitter.com/felipebastosweb > -- http://felipebastosweb.com.br http://twitter.com/felipebastosweb -- 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.
