对于我的生活,我无法理解为什么我在安装CodeIgniter和当前的MVC设置时收到错误。
我看到的错误是
致命错误:在第17行的/var/www/application/controllers/login.php中调用未定义的方法Login :: users_model()
控制器 application / controllers / login.php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Login extends CI_Controller {
public function __construct()
{
parent::__construct();
}
public function index()
{
$data = '';
$this->load->model('users_model');
$data['testing'] = $this->users_model()->test_user();
$this->load->view('home',$data);
}
}
模型 application / models / users_model.php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Users_model extends CI_Model {
function __construct()
{
// Call the Model constructor
parent::__construct();
}
function test_user() {
return 'Test User #1';
}
}
查看 application / views / home.php
echo $testing;
答案 0 :(得分:2)
不需要型号名称为
的功能支架if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Login extends CI_Controller {
public function __construct()
{
parent::__construct();
}
public function index()
{
$data = '';
$this->load->model('users_model');
$data['testing'] = $this->users_model->test_user();
$this->load->view('home',$data);
}
}
答案 1 :(得分:1)
将$data['testing'] = $this->users_model()->test_user();
替换为控制器中的$data['testing'] = $this->users_model->test_user();
。
答案 2 :(得分:0)
只需在构造函数
中加载模型即可public function __construct()
{
parent::__construct();
$this->load->model('users_model');
}
然后简单地调用任何控制器函数内的相关函数。
public function index()
{
$data = '';
$data['testing'] = $this-> users_model-> test_user();
$this->load->view('home',$data);
}