簡體   English   中英

無法找到您指定的模型 - CodeIgniter問題

[英]Unable to locate the model you have specified - CodeIgniter Issue

我無法找到模型錯誤。

$this->load->model('1/Gift_model');

我的模型文件名是/ models / 1 /中的gift_model.php

我按照以下方式聲明模型。

class Gift_model extends CI_Model {

根據CodeIgniter的文檔,我正在以正確的方式進行。 有什么建議么? 我有5個其他模型以完全相同的方式命名,它們都裝得很好。

  1. 使模型類名稱為大寫 My_model
  2. 使模型的PHP文件名小寫 my_model
  3. 使用小寫 (文件名) $this->load->model('my_model');加載模型$this->load->model('my_model');

$this->load->model('1/Gift_model'); 應該是$this->load->model('1/gift_model'); 這個加載參數的小寫和php文件名,文件中類名的大寫(你有三個正確的兩個)。

http://www.codeigniter.com/userguide3/installation/upgrade_300.html

從CodeIgniter 3.0開始,所有類文件名(庫,驅動程序,控制器和模型)必須以類似於Ucfirst的方式命名,或者換句話說 - 它們必須以大寫字母開頭

曾經是以小寫字母開頭的模型文件,但他們改變了它。

確保模型名稱為Gift_model,類名稱也為Gift_model

class Gift_model extends CI_Model
{

}

但加載類是'1 / gift_model'不是'Gift_model'

$this->load->model('1/gift_model');

希望這很有幫助

問題是當您在CodeIgniter中加載Gift_model時,您的文件名全部為小寫( gift_model.php )。 將文件名更改為Gift_model.php或相應地更新您的代碼。

您是否正在調用模型的父級構造函數?

class Gift_model extends CI_Model {
    function __construct()
    {
        parent::__construct();
    }
-> Model Class name must be Uppercase
-> Model PHP file name must be Lowercase
-> Load Model using Lowercase(filename): $this->load->model('gift_model', TRUE);

從CodeIgniter 3.0開始,所有類文件名(庫,驅動程序,控制器和模型)必須以類似Ucfirst的方式命名,或者換句話說 - 它們必須以大寫字母開頭。

來源:CI docs

`如果使用codeignitor 3.1.3
除了顯示錯誤類名稱=> My_model之外的所有內容

文件名=> My_model.php

load model => $ this-> load-> model('My_model');

call function => $ this-> My_model-> function();`

暫無
暫無

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

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