Fatal error: Call to undefined method Team_model::exist_team() in C:\wamp\www\example\application\libraries\teams.php on line 28
这是我的图书馆:
class Teams { // My class
function __construct()
{
$this->ci =& get_instance();
$this->ci->load->model('team_model');
}
function exist_team($team_id) { // this function give me that error
if ($query_get_info = $this->ci->team_model->exist_team($id_team)) { // line with error
return $query_get_info[0];
} else {
return false;
}
}
}
这是我的模特
class Team_model extends CI_Model {
function exist_team($id_team) { // function exixst team in library
$this->db->select('*');
$this->db->from('teams');
$this->db->where('url',$id_team);
$query = $this->db->get();
if ($query->num_rows() == 0) {
return false;
} else {
return $query->result();
}
}
}
答案 0 :(得分:2)
我能够在干净的CI安装上运行它而不会出错。这是我要检查的内容:
确保您的模型和库的文件名都是大写的。 (Team_model.php& Teams.php)。 *注意 - Codeigniter Docs声明只有库名称必须大写,但在GitHub上使用当前版本,加载失败,除非两个文件都大写。
在构造函数范围之外声明CI变量。这应该不是问题,但值得探讨。
class Teams {
private $_ci;
function __construct()
{
$this->_ci =& get_instance();
$this->_ci->load->model('team_model');
}
}
无关,但有错误:您使用$team_id
,然后使用$id_team
。
function exist_team($team_id) {
if ($query_get_info = $this->ci->team_model->exist_team($id_team)) {
答案 1 :(得分:0)
检查模型名称的拼写错误,如果有任何拼写错误或与原始模型不同的名称显示未定义方法的错误。