簡體   English   中英

Codeigniter會話庫-HMVC

[英]Codeigniter Session Library - HMVC

我在使用CI 3.0.3和最新的HMVC Extension進行編碼時遇到了一個問題。 我正在自動加載一些庫,助手等。 會話庫也是如此。 現在我有幾個控制器工作正常,除了一個。

在那個控制器中,我使用以下代碼:

modules::run($module->module . '/' . $module->controller . '/' . $module->method, unserialize($block->configuration));

使用此靜態函數時出現錯誤:

Unable to locate the specified class: Session.php

日志顯示Session類已初始化。

INFO - 2015-12-01 09:41:40 --> Session: Class initialized using 'database' driver.

任何想法,為什么我得到這個錯誤?

編輯:------------------------------------------------ -----------------------

為了防止出現以下愚蠢的答案...

在CI中,每個請求最多只能調用1個控制器。 因此,要實現HMVC,我們必須模擬控制器。 可以使用庫或此“模塊化擴展HMVC”功能來完成。

使用庫和“模塊化HMVC” HMVC類之間的區別是:1.無需獲取和使用HMVC類中的CI實例。2. HMVC類存儲在模塊目錄中,而不是庫目錄中。

編輯2:----------------------------------------------- ----------------------

如有其他疑問:

  • 是的,會話庫是問題所在
  • 是的,僅與此HMVC插件結合使用
  • 是的,僅當您使用靜態方法modules::run();時才可以modules::run();
  • 不,我需要這種在控制器中模擬控制器的方法

簡單。

如果要在控制器中加載控制器,請使用:

Modules::load();

或外包Modules::run(); 進入由主控制器加載的視圖。

簡單。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM