问题标签 [hmvc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
545 浏览

.htaccess - CodeIgniter + mod_rewrite URI 缩短

我正在使用 CI 构建一个类似博客的网站。我正在使用HMVC 插件。我正在使用的模块是“/journal”。

个别文章可在 /journal/article/ID/SLUG 访问。这很好用,但我想使用 mod_rewrite 将 URI 缩短为 /journal/ID/SLUG。

这是我的规则:

为了测试,我使用 /journal/2。

我知道规则是匹配的。例如,如果我将重定向更改为http://google.com,我确实会被重定向到 Google。但是,当使用所写的规则时,它似乎被忽略了,无论我输入什么,我都会得到 404。

我是否犯了一些明显(或神秘)的错误?


编辑:我在发布问题后不久就发现了这一点。我的规则确实是正确的,但我需要在 config/config.php 中更改以下行:

我不会声称确切知道该更改的作用或解决问题的原因。也许有人可以跟进解释。

0 投票
2 回答
158 浏览

comments - Kohana - 文章下的评论

Kohana v3.2 文章下如何显示评论?我应该对评论控制器使用子请求还是只在文章控制器的“查看”操作中调用评论模型?

0 投票
2 回答
1027 浏览

codeigniter - 回调函数的错误消息不显示

我有以下代码:

用户模型.php

从这里我们可以看到如果用户没有填写用户名和密码字段,它将显示错误并且一切都按预期工作。问题是,如果用户提供了无效的用户名或密码,则不会显示错误消息。

对于信息,我已经放入$lang['invalid_username'] = 'Invalid username or password';了语言文件。

我正在使用 HMVC 技术进行此操作。请帮我。

0 投票
2 回答
2480 浏览

codeigniter - Codeigniter 模板库和 HMVC(mx 库)静态方法 run()

我有这个正在使用的测试代码..我有一个名为的模块 ,ms另一个名为控制器代码的模块是:testtest

里面的代码ms是:

问题是内部的构建功能test试图在views文件夹而不是views文件夹中找到index视图文件..我检查了它,它给了我模块名称..有人知道如何解决这个问题吗?mstest$this->_modulems

0 投票
1 回答
808 浏览

php - 在同一台服务器上具有 1 个 kohana 核心的多个站点

我认为它必须是可能的,但还没有发现任何有用的东西......

是否可以使用 1 个 Kohana 核心运行多个网站?基本上所有的网站都是一样的,只是布局不同。(只是一个不同的视图文件夹,(作品))和内容有点不同。(这是基于从数据库中提取它的常量 SITE_ID,(也有效))

唯一的两件事是,如何在我的 bootstrap/index.php 中配置它?我想检查网址。使用该 url 对表 'websites' 执行查询(选择 where url = '$url')并获取正确的 SITE_ID 并从该查询中查看。这样,x.com y.com 和 z.com 都会提取相同的 index.php 文件。在定义 SITE_ID 并使用该 ID 加载正确的内容并使用正确的视图之后。

另外,我怎样才能结合小部件来做到这一点。我有 8 个不同的小部件,每个网站在不同的页面上显示这 8 个中的 3 个。因此 x.com/a 将显示小部件“widget_1”和“widget_2”,x.com/b 将显示“widget_2”和“widget_3”。但是 y.com/a 必须显示“widget_6”和“widget_7”,而 y.com/b 必须显示“widget_3”和“widget_4”。有没有办法可以管理?以前我没有经常使用小部件,现在我想将它与多个站点结合使用......

可能的?

0 投票
2 回答
8218 浏览

codeigniter - 如何使用 codeigniter 模块化扩展从 Module 加载库

我需要使用模块化扩展从我的模块中加载一个库

我的结构是这样的

模块/

模块/类别/库

  • categories_class.php

模块/类别/控制器/

  • 类别.php

    我需要在类别控制器中加载类别库。

有人帮我吗?

0 投票
1 回答
1946 浏览

php - 如何在 Codeigniter 的 HMVC 模块中扩展控制器类以允许路由

问题:

如何扩展 HMVC 模块的控制器,然后在 Codeigniter 的 URI 路由器中调用该扩展类?

细节:

假设以下与 HMVC 相关的典型 Codeigniter 文件结构:

我有一个类Events存储在/application/modules/events/controllers/events.php. 我想将它扩展到CoursesConferences为这些各自的控制器提供特定的功能。我想将这些控制器存储在同一个模块文件夹中(即/applications/modules/events/controllers/courses.php,等)我想将访问http://www.example.com/courses的用户路由到courses控制器,如下所示:

我还想将访问http://www.example.com/conferences的用户路由到conferences控制器,如下所示:

问题:

不幸的是,我似乎无法让它工作,因为课程不包含在它自己的模块中,因此路由器无法找到。看来路由器正在course以下文件路径中查找类文件:/applications/modules/courses/controllers/courses.php. 我已尝试将该文件移动到上述路径,但随后我被要求提供扩展自的Events控制器类的位置。Courses

一个可能的解决方案:

一种可能的解决方案可能是将每个控制器包含在单个控制器文件中。但是,我不希望这样做,因为我喜欢将每个类存储在它自己的单独文件中,并尽可能与它的扩展类进行分组。我正在寻找一个更优雅且完全正确的解决方案。即使我要尝试使用单个文件的这种技术,它也需要包含在其中/applications/modules/courses/controllers/courses.php才能被访问。这让我在稍后尝试路由到conferences控制器时不走运。

0 投票
1 回答
330 浏览

php - CI2 hmvc 数据映射器

致命错误:第 5 行 C:\xampp\htdocs\test\ci\application\libraries\datamapper.php 中允许的内存大小为 194217728 字节已用尽(尝试分配 261904 字节)

问题是什么?它可以正常工作,但是在尝试运行任何数据映射器功能时会出现错误。

数据库配置在../config/database.php

0 投票
1 回答
955 浏览

php - 如何在 MVC 应用程序中引导流量:CodeIgniter $routes 或 __remap() 用于控制器选择?

背景:

我正在为 CodeIgniter 使用 HMVC 插件,但这个问题通常适用于 MVC。

问题:

我应该使用$routes匹配我的 URL 布局以便调用特定的控制器/模块,还是应该在我__remap()的每个控制器中创建函数来调用 url 系列中的下一个“模块”?

我可以成功实施这两种方法中的任何一种,但我并没有真正看到明确的赢家。我正在寻找使用一种方法而不是另一种方法的理由(除非两者结合更合适)。

另外,我不是在寻找任何语法帮助,所以如果下面有小错误,你可以忽略它们,我只是在寻找如何将 MVC (HMVC) 最佳实践应用于我的网站。

访问者可能遇到的 URL:

假设在我的应用程序中可能遇到以下 URL:

对应于上述 URL 段的控制器:

和相应的控制器:

  • 地点
  • 页面
  • 专业(扩展为特定专业#)
  • 用户
  • 活动
  • 搜索

我的控制器的 CodeIgniter 目录布局:

它们每个都充当自己的模块并按以下方式存储:

每个模块都有一个modelsviewscontrollers子目录。

示例 $routes:

如果我要使用路由器来实现所有这些,我将使用routes我在config文件中定义的以下内容:

专业的示例 __remap()

__remap()如果事实证明这是最好的方法,我已经开发了可以在每个控制器中使用的功能。这是控制器的一个此类功能的示例Professions

结论:

如果需要任何其他信息来帮助解决此问题,请告诉我,我会提供。

0 投票
1 回答
266 浏览

php - 带有 HMVC 的桌面和移动版本

我希望在 CodeIgniter 中使用 HMVC 创建一个桌面版和移动版网站。

这类似于这个问题:

带有 codeigniter 的移动和桌面 Web 应用程序

但不同之处在于我的视图存储在单独的模块目录中,这使得很难按照建议仅更改视图路径。

问题:

如何使用与桌面版本完全相同的控制器逻辑来创建站点的移动版本,但在使用 HMVC 时具有不同的视图?