【问题标题】:Code Igniter Modular Extensions Default_controllerCodeigniter 模块化扩展 Default_controller
【发布时间】:2011-11-21 07:19:10
【问题描述】:

我目前正在设计一个需要模块化的应用程序 - 为此我使用模块化扩展 - 用于代码点火器的 HMVC。

我正在尝试将 application/config/config.php 文件中定义的 default_controller 更改为默认为模块控制器,例如:users/controllers/login,但是无论我将什么放入 default_controller 设置中,我都会得到404 页。

我尝试了以下方法无济于事:

 $route['default_controller'] = "index.php/modules/core/controllers/login";
 $route['default_controller'] = "/modules/core/controllers/login";
 $route['default_controller'] = "login";
 $route['default_controller'] = "./modules/core/controllers/login";
 $route['default_controller'] = APPPATH."/application/modules/core/controllers/login";

如您所知,我的模块目录位于 application/modules/ 任何想法都非常感谢。

【问题讨论】:

  • 看起来您有一个带有子目录“users”的“核心”模块:这可能不起作用。能正常访问网址吗?如果是这样,请将 URI 字符串放入路由的值中(基本 url 之后的所有内容)。请记住,路由不知道文件系统,而是将一个对请求的响应替换为另一个响应。
  • 转到直接网址也不起作用..下面的答案很好:)
  • 不是整个 url,只是路由部分。所以,如果你的工作 url 是http://example.com/foo/bar/baz,那么路由的值应该是foo/bar/baz(虽然后面定义的路由可能会影响这个)。

标签: codeigniter hmvc modular


【解决方案1】:

你必须使用模块名称/控制器名称

如果你的模块是用户并且控制器是登录的,那么默认写成

 $route["default_controller"] = "users/login";

【讨论】:

  • 这也适用于模块 = 用户、控制器 = 用户、方法 = 登录。
  • 谢谢,这是一种享受!不敢相信我没想到这一点。
  • 老板你必须提到函数名,如果它不是索引的话。喜欢: $route["default_controller"] = "core/users/login";模块 = 核心,控制器 = 用户,方法 = 登录。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-31
  • 2014-12-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多