1

我有来自https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc的 hmvc 结构

模块内容,创建控制器news_event,并为功能视图详细查看结构,如下所示

  • 模块
    • ...
    • ...
    • 内容
      • 控制器
        • ...
        • news_event.php

news_event.php中

我有 3 个功能、索引、视图和页面

 function index() { $this->pages(); }

 function pages($_pages = 1){ ... }

 function view($_id_uri = false){ ... }

我成功了

http://example.com/ci_hmvc/content/news_event/

变得

http://example.com/ci_hmvc/news_event/

但是在加载下一个视图时出现错误

http://example.com/ci_hmvc/news_event/view/my-var-uri-friendly-here

我收到错误 404,但如果我使用此 url 调用,则成功

http://example.com/ci_hmvc/content/news_event/view/my-var-uri-friendly-here

我的路由代码是

 $route['news_event'] = 'content/news_event';
 $route['news_event/(:any)'] = 'content/news_event/view/$1';

路线如何,如果我想访问

http://example.com/ci_hmvc/news_event/view/my-var-uri-friendly-here

或这个

http://example.com/ci_hmvc/news_event/my-var-uri-friendly-here

4

1 回答 1

1

如果您使用模块文件夹中的路由文件,则路由名称必须以模块名称开头。

模块/内容/配置/routes.php

$route['default_controller'] = 'content';

$route['content/'] = '';

您可以在普通路由文件中添加路由

应用程序/config/routes.php

$route['news_event'] = 'content/content/news_event';

hmvc 背后的思想是通过路由方法调用模块,而是在系统本身(视图或控制器)内调用模块

Modules::run('module/controller/method', $args);
于 2013-05-12T18:55:57.510 回答