CI框架中自定義view資料夾位置

2022-05-08 07:03:06 字數 1282 閱讀 2378

要想自定義view資料夾的位置,首先要了解ci框架時如何載入view資料夾的。

ci中預設呼叫view的方法是:

$this->load->view();  //這一行**的原理是什麼呢?請往下看:

public function add_package_path($path, $view_cascade =true)

但本著可擴充套件性的原則,我們不去修改源**,而是使用繼承的原則來解決這個問題:

方法:我們自定義乙個my_loader.php的類,繼承自loader.php,然後在my_loader.php中修改$this->_ci_view_paths;

這裡用乙個小例子來說明:

<?php

defined('basepath') or exit('no direct script access allowed');

class my_loader extends ci_loader

//關閉新的檢視目錄

public function switch_view_off()

}

<?php

defined('basepath') or exit('no direct script access allowed');

//定義前台總控制器

class home_controller extends ci_controller

}//定義後台總控制器

class admin_controller extends ci_controller

}

疑點:為什麼上述**可以在controller裡面呼叫loader類的方法呢?

答:因為ci中的ci_controller控制器有乙個特殊的名字,叫做超級控制器,這個超級控制器裡面集中了很多類庫,其中就包括loader類,所以可以在控制器中直接呼叫loader類的方法。關於這個超級控制器,這裡不再贅述,只是做乙個拋磚引玉,有興趣的童鞋,可以自己研究研究。

---------到這裡修改完成--------。

這樣我們再寫**的時候,前台控制器就繼承home_controller,當你使用$this->load->view()方法的時候,ci就會自動去載入你自定義的view目錄下的視**件。

後台控制器就繼承admin_contoller,當你使用$this->load->view()方法的時候,ci就會載入預設的view目錄下的視**件。

並且前後臺都有自己的父類控制器,以後可以在父類控制器裡做一些許可權控制的設定,也非常方便。

自定義資料夾瀏覽控制項類

檔案對話方塊屬於通用對話方塊範疇 另外還有顏色,查詢,查詢替換,字型,列印等對話方塊 借助mfc現成的類cfiledialog你可以輕易操作檔案對話方塊。cfiledialog dlg true,t txt t b.txt ofn filemustexist ofn hidereadonly,t 文...

SAP BYD 自定義BO中的附件資料夾

用於儲存與業務文件相關的附件的物件。例如,貨運單或貨運單。您使用從屬物件來儲存與業務文件相關的附件。您可以儲存以下附件型別 檔案您可以上載任何包含二進位制內容的檔案。鏈結您可以儲存指向可通過統一資源定位器 url 訪問的外部內容的鏈結。例如,指向全球資訊網上的內容的鏈結或指向伺服器上儲存的檔案的鏈結...

自定義View中的適配

自定義view中,使用的單位都是px,那如何去適配螢幕呢?獲取螢幕寬度px等資料,然後根據這些去設定 view的寬度px,字型的大小 我們可以把想要顯示的大小用dp sp作為單位,然後在 中通過工具類轉換為px package com.zhy.utils import android.content...