![](/img/trans.png)
[英]Error in Codeigniter :- Call to undefined method CI_Loader::select()
[英]php codeigniter: Call to undefined method CI_Loader::model()
我想使用codeigniter制作一個Web應用程序,但是已經有一段時間了,因為我已經使用了它,並且每次嘗試在控制器中加載模型時都會出現錯誤。 我可能正在做一些愚蠢的錯誤,但我不知道這是什么。 所以,如果可以的話,請幫助我。
這是我得到的錯誤:
這是我模型的代碼:
<?php
class post_model extends CI_Model {
function __construct() {
parent::__construct();
}
function getAllPosts() {
$this->db->order_by('date', 'desc');
$query = $this->db->get('post');
return $query->result();
}
}
?>
這是我加載模型的控制器代碼:
<?php
if (!defined('BASEPATH'))
exit('No direct script access allowed');
class Post extends CI_Controller {
public function __construct() {
parent::__construct();
$this->load->model('post_model');
}
public function index() {
$data['title'] = 'Berichten';
$data['posts'] = $this->post_model->getAllPosts();
$this->template->load('posts', $data);
}
}
自動加載:
$autoload['helper'] = array('url', 'form', 'date');
$autoload['model'] = array();
解決了:我無法解決它,但是我創建了一個新項目並復制粘貼了我的代碼,現在它可以正常工作,所以不知道出了什么問題。
所有類的首字母應大寫
class Post_model extends CI_Model {
在第11行加載模型時會引發錯誤
class post_model extends CI_Model {
function __construct() {
parent::__construct();
$this->load->database();//加上這句
}
function getAllPosts() {
$this->db->order_by('date', 'desc');
$query = $this->db->get('post');
return $query->result();
}
}
我認為您的模型文件擴展名為.html
...更改文件擴展名為.php
...正確: model_file.php
錯誤: model_file.html
檢查文件格式。
類名必須以大寫字母開頭,文件名必須與該類的文件名具有擴展名.php並從模型中刪除關閉的php標簽。codeigniter類文件不需要任何關閉標簽。框架自動關閉。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.