Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

cassiombc

Route

Recommended Posts

Galera estou tendo uma dorzinha de cabeça com route, não estou sabendo ultilizar meu codigo é esse:

 

empresa.label = "Empresa"
empresa.controller = "empresa"
empresa.action = ""
empresa.class = "home"
empresa.title = ""
empresa.route="default"



servico.label = "Serviços"
servico.controller = "servico"
servico.action = "index"
servico.class ="home"
servico.title = ""
servico.route="default"

       servico.pages.admin.label = "Pedido"
       servico.pages.admin.controller = "auth"
       servico.pages.admin.action = "login"
       servico.pages.admin.title = ""
       servico.pages.admin.class="home"
       servico.pages.admin.route="default"
       ;servico.pages.admin.params.servico="categoria"

       servico.pages.rma.label = "RMA"
       servico.pages.rma.controller = "servico"
       servico.pages.rma.action = "regrasrma"
       servico.pages.rma.title = ""
       servico.pages.rma.class="home"
       servico.pages.rma.route="servico"
       ;servico.pages.rma.params.servico="categoria"



faleconosco.label = "Fale-conosco"
faleconosco.controller = "faleconosco"
faleconosco.action = "index"
faleconosco.class ="home"
faleconosco.title = ""
;faleconsoco.route="default"



       faleconosco.pages.formulario.label = "Formulario"
       faleconosco.pages.formulario.controller = "faleconosco"
       faleconosco.pages.formulario.action = "formulario"
       faleconosco.pages.formulario.title = ""
       faleconosco.pages.formulario.class="home"
       faleconosco.pages.formulario.route="faleconosco"


       faleconosco.pages.chat.label = "CHAT"
       faleconosco.pages.chat.controller = "faleconosco"
       faleconosco.pages.chat.action = "chat"
       faleconosco.pages.chat.title = ""
       faleconosco.pages.chat.class="home"
       faleconosco.pages.chat.route="faleconosco"



       faleconosco.pages.vendedores.label = "Vendedores"
       faleconosco.pages.vendedores.controller = "faleconosco"
       faleconosco.pages.vendedores.action = "vendedor"
       faleconosco.pages.vendedores.title = ""
       faleconosco.pages.vendedores.class="home"
       faleconosco.pages.vendedores.route="faleconosco"



 

o meu aplication.ini esta assim:

 

[production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
phpSettings.date.timezone = "America/Sao_Paulo"

includePaths.library = APPLICATION_PATH "/../library"

bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"

appnamespace = "Application"

resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.params.displayExceptions = 1


resources.frontController.moduleDirectory   = APPLICATION_PATH "/modules"
resources.modules[]= ""
resources.layout.layout = "layout"
resources.frontController.defaultModule = "default"
resources.frontController.prefixDefaultModule = "true"
resources.frontController.params.prefixDefaultModule = "1"



resources.router.routes.servico.route = "servico/"
resources.router.routes.servico.defaults.controller = "index"
resources.router.routes.servico.defaults.module = "servico"
;resources.router.routes.servico.defaults.action = "pedido"
;resources.router.routes.serv.defaults.categoria = null

resources.router.routes.faleconosco.route = "faleconosco/*"
resources.router.routes.faleconosco.defaults.controller = "index"
resources.router.routes.faleconosco.defaults.module = "faleconosco"

; Banco de dados
resources.db.adapter = "PDO_MYSQL"
resources.db.params.host = "localhost"
resources.db.params.username = "root"
resources.db.params.password = ""
resources.db.params.dbname = "seatech"
resources.db.isDefaultTableAdapter = true



[staging : production]




[testing : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1

[development : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.frontController.params.displayExceptions = 1

 

o meu problema é que quando eu clico em serviço, ele me leva ao index tudo bem

mas meu problema é que quando eu clico em faleconosco ele não vai, agora se eu clicar em formulário que esta dentro de faleconosco ai ele vai, para a pagina formulario.

So que quando eu clico neste momento em faleconosco ele abre, mas porque ele nao abre quando eu clico nele diretamente so abre quando eu clico no item dele e depois nele?

 

Eu posso deixar de usar route para evitar esse problema ou como posso corrigir?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você criou várias regras de route com o mesmo nome, dessa forma uma sobrepõe a outra. Note que tem 3 regras diferentes com o nome "servico" e 4 com o nome "faleconosco".

 

Corrija isso e veja se funciona.

Compartilhar este post


Link para o post
Compartilhar em outros sites

neste caso deixei apenas as tres da seguinte maneira


resources.router.routes.servico.route = "servico/"
resources.router.routes.servico.defaults.controller = "index"
resources.router.routes.servico.defaults.module = "servico"


resources.router.routes.faleconosco.route = "faleconosco/*"
resources.router.routes.faleconosco.defaults.controller = "index"
resources.router.routes.faleconosco.defaults.module = "faleconosco"

 

mas continua do mesmo jeito

Compartilhar este post


Link para o post
Compartilhar em outros sites

ajustei da seguinte maneira


resources.router.routes.servico.route = "servico/*"
resources.router.routes.servico.controller = "index"
resources.router.routes.servico.module = "servico"


resources.router.routes.faleconosco.route = "faleconosco/*"
resources.router.routes.faleconosco.controller = "index"
resources.router.routes.faleconosco.module = "faleconosco"

 

so que meu navigation fico da seguinte maneira

 

servico.label = "Serviços"
servico.controller = "servico"
servico.action = "index"
servico.class ="home"
servico.title = ""
servico.route="default"

       servico.pages.admin.label = "Pedido"
       servico.pages.admin.controller = "auth"
       servico.pages.admin.action = "login"
       servico.pages.admin.title = ""
       servico.pages.admin.class="home"
       servico.pages.admin.route="default"
       ;servico.pages.admin.params.servico="categoria"

       servico.pages.rma.label = "RMA"
       servico.pages.rma.controller = "servico"
       servico.pages.rma.action = "regrasrma"
       servico.pages.rma.title = ""
       servico.pages.rma.class="home"
       servico.pages.rma.route="servico"
       ;servico.pages.rma.params.servico="categoria"



faleconosco.label = "Fale-conosco"
faleconosco.controller = "faleconosco"
faleconosco.action = "index"
faleconosco.class ="home"
faleconosco.title = ""
;faleconsoco.route="default"



       faleconosco.pages.formulario.label = "Formulario"
       faleconosco.pages.formulario.controller = "faleconosco"
       faleconosco.pages.formulario.action = "formulario"
       faleconosco.pages.formulario.title = ""
       faleconosco.pages.formulario.class="home"
       faleconosco.pages.formulario.route="faleconosco"


       faleconosco.pages.chat.label = "CHAT"
       faleconosco.pages.chat.controller = "faleconosco"
       faleconosco.pages.chat.action = "chat"
       faleconosco.pages.chat.title = ""
       faleconosco.pages.chat.class="home"
       faleconosco.pages.chat.route="faleconosco"



       faleconosco.pages.vendedores.label = "Vendedores"
       faleconosco.pages.vendedores.controller = "faleconosco"
       faleconosco.pages.vendedores.action = "vendedor"
       faleconosco.pages.vendedores.title = ""
       faleconosco.pages.vendedores.class="home"
       faleconosco.pages.vendedores.route="faleconosco"

 

se eu alterar o controlador para index ele e chamo o metodo ele dis que nao existe e o metod esta criado e public, como é isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ajustei da seguinte maneira


resources.router.routes.servico.route = "servico/*"
resources.router.routes.servico.controller = "index"
resources.router.routes.servico.module = "servico"


resources.router.routes.faleconosco.route = "faleconosco/*"
resources.router.routes.faleconosco.controller = "index"
resources.router.routes.faleconosco.module = "faleconosco"

 

so que meu navigation fico da seguinte maneira

 

servico.label = "Serviços"
servico.controller = "servico"
servico.action = "index"
servico.class ="home"
servico.title = ""
servico.route="default"

       servico.pages.admin.label = "Pedido"
       servico.pages.admin.controller = "auth"
       servico.pages.admin.action = "login"
       servico.pages.admin.title = ""
       servico.pages.admin.class="home"
       servico.pages.admin.route="default"
       ;servico.pages.admin.params.servico="categoria"

       servico.pages.rma.label = "RMA"
       servico.pages.rma.controller = "servico"
       servico.pages.rma.action = "regrasrma"
       servico.pages.rma.title = ""
       servico.pages.rma.class="home"
       servico.pages.rma.route="servico"
       ;servico.pages.rma.params.servico="categoria"



faleconosco.label = "Fale-conosco"
faleconosco.controller = "faleconosco"
faleconosco.action = "index"
faleconosco.class ="home"
faleconosco.title = ""
;faleconsoco.route="default"



       faleconosco.pages.formulario.label = "Formulario"
       faleconosco.pages.formulario.controller = "faleconosco"
       faleconosco.pages.formulario.action = "formulario"
       faleconosco.pages.formulario.title = ""
       faleconosco.pages.formulario.class="home"
       faleconosco.pages.formulario.route="faleconosco"


       faleconosco.pages.chat.label = "CHAT"
       faleconosco.pages.chat.controller = "faleconosco"
       faleconosco.pages.chat.action = "chat"
       faleconosco.pages.chat.title = ""
       faleconosco.pages.chat.class="home"
       faleconosco.pages.chat.route="faleconosco"



       faleconosco.pages.vendedores.label = "Vendedores"
       faleconosco.pages.vendedores.controller = "faleconosco"
       faleconosco.pages.vendedores.action = "vendedor"
       faleconosco.pages.vendedores.title = ""
       faleconosco.pages.vendedores.class="home"
       faleconosco.pages.vendedores.route="faleconosco"

 

se eu alterar o controlador para index ele e chamo o metodo ele dis que nao existe e o metod esta criado e public, como é isso?

o erro mostrado é

 

Message: Action "vendedor" does not exist and was not trapped in __call()

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.