Я установил локальную копию CodeIgniter и другую копию на машине с Linux. После установки обеих копий с моим приложением локальная копия работает нормально, но версия linux показывает следующий код ошибки:
Unable to locate the model you have specified: User_model
Я весь день искал ответ на этот вопрос. Я попытался изменить написание названия модели, имени файла, всего, что я могу придумать. Что я мог упустить, что бы отобразить эту ошибку?
Спасибо, парни
Вот копия моего кода:
(User_model.php)
<?php
class User_model extends CI_Model {
public function __construct(){
parent::__construct();
}
function runTest(){
return "Testing";
}
}
?>
(Welcome.php)
class Welcome extends CI_Controller {
public function __construct(){
parent::__construct();
}
public function index()
{
$this->load->model('User_Model');
$data['testing'] = $this->user1234->runTest();
$this->load->view('welcome_message', $data);
}
}
Это из-за чувствительности к регистру. Прежде всего вы должны хранить все имена файлов маленькими буквами (user_model.php), а затем использовать это имя в контроллере ($ this-> load-> model (‘user_model’);).
Это должно работать.
Спасибо вам, ребята, за помощь. Видимо, это были проблемы с именами. Я прописал имя файла, и в контроллере, и теперь он работает просто отлично. Не знаю, что тихо случилось с этим. Но спасибо вам, ребята.
Новый код выглядит так:
$this->load->model('User_model');
$query = $this->User_model->validate();
$this->load->model('User_Model');
$data['testing'] = $this->user1234->runTest();
$this->load->view('welcome_message', $data);
во второй строке есть ошибка
измените это на
$data['testing'] = $this->user_model->runTest();