我正在尝试向我的应用程序添加一个路由,这样我就可以在ajax调用中使用它。
下面是我的application.ini中的内容
;Routes
resources.router.routes.products.route = "/backend/api/:command"
resources.router.routes.products.defaults.module = "backend"
resources.router.routes.products.defaults.controller = "api"
resources.router.routes.products.defaults.action = "index"当对/backend/api/SomeCommand进行ajax调用时,会产生以下错误:
消息:指定的控制器无效(后端)
array (
'controller' => 'backend',
'action' => 'maestro',
'module' => 'default',
)正如你所看到的,module被设置为"default",而不是"backend",控制器是"backend“而不是"api",这是什么原因造成的呢?
发布于 2011-08-25 13:31:42
看起来在这个路由之后定义了另一个与请求匹配的更通用的路由。
您需要按从最小到最具体的顺序定义您的路由,通常通过使用固定术语(如backend/api前缀)来改进您的路由。
请特别参阅Basic Rewrite Router Operation
注释:反向匹配
路由是以相反的顺序匹配的,因此请确保首先定义最通用的路由。
仅供参考:您不需要在路由前添加正斜杠
https://stackoverflow.com/questions/7185354
复制相似问题