改进App的模块设置

This commit is contained in:
thinkphp
2016-06-24 14:59:18 +08:00
parent 87ad5e95bb
commit 75f855757b

View File

@@ -240,6 +240,7 @@ class App
if (is_string($result)) { if (is_string($result)) {
$result = explode('/', $result); $result = explode('/', $result);
} }
$request = Request::instance();
if ($config['app_multi_module']) { if ($config['app_multi_module']) {
// 多模块部署 // 多模块部署
$module = strip_tags(strtolower($result[0] ?: $config['default_module'])); $module = strip_tags(strtolower($result[0] ?: $config['default_module']));
@@ -258,6 +259,7 @@ class App
// 模块初始化 // 模块初始化
if ($module && $available) { if ($module && $available) {
// 初始化模块 // 初始化模块
$request->module($module);
$config = self::init($module); $config = self::init($module);
} else { } else {
throw new HttpException(404, 'module not exists:' . $module); throw new HttpException(404, 'module not exists:' . $module);
@@ -265,6 +267,7 @@ class App
} else { } else {
// 单一模块部署 // 单一模块部署
$module = ''; $module = '';
$request->module($module);
} }
// 当前模块路径 // 当前模块路径
App::$modulePath = APP_PATH . ($module ? $module . DS : ''); App::$modulePath = APP_PATH . ($module ? $module . DS : '');
@@ -285,9 +288,8 @@ class App
throw new \InvalidArgumentException('illegal controller name:' . $controller); throw new \InvalidArgumentException('illegal controller name:' . $controller);
} }
// 设置当前请求的模块、控制器、操作 // 设置当前请求的控制器、操作
$request = Request::instance(); $request->controller($controller)->action($actionName);
$request->module($module)->controller($controller)->action($actionName);
// 监听module_init // 监听module_init
Hook::listen('module_init', $request); Hook::listen('module_init', $request);