所以我相信我做对了(我对活动记录不熟悉)。 我遇到的问题我不断收到错误
Message: Call to a member function getbank() on a non-object
我的代码很简单
控制器
class Profile extends CI_Controller
{
function index()
{
$data = array();
if($query = $this->profile_model->getbank())
{
$data['records'] = $query;
}
$this->load->view('profile_view', $data);
}
}
模型
class Profile_model extends CI_Model {
function getbank()
{
$query = $this->db->get('bank');
return $query->results();
}
它如此简单,我看不到错误,谢谢。
答案 0 :(得分:3)
试试这个
<强>控制器强>
class Profile extends CI_Controller
{
function index()
{
$data = array();
$this->load->model('profile_model'); # Added
$query = $this->profile_model->getbank(); # Changed
if(!empty($query)) # Changed
{
$data['records'] = $query;
}
$this->load->view('profile_view', $data);
}
}
<强>模型强>
class Profile_model extends CI_Model {
public function getbank() # Changed
{
$query = $this->db->get('bank');
return $query->result(); # Changed
}
}
<强>更新强>
简单回答,感谢所有尝试过帮助的人。我的模型文件名有一个小写字母而不是大写字母。
Eg profile_model.php
should be Profile_model.php
然而,这个解决方案优雅而简单,所以它改进了我的代码,所以我接受这个。
答案 1 :(得分:1)
可能是因为你没有加载你的模型? 尝试将控制器更改为:
class Profile extends CI_Controller
{
function index()
{
$data = array();
$this->load->model('Profile_model');
if($query = $this->Profile_model->getbank())
{
$data['records'] = $query;
}
$this->load->view('profile_view', $data);
}
}