Как загрузить модель на HMVC с CodeIgniter? - PullRequest
0 голосов
/ 23 марта 2012

Я использую библиотеки для HMVC, я использую CI 2.1, и я просто не могу начать с базовых вещей, может кто-нибудь сказать мне, как загрузить модель контроллера, когда я работаю в качестве модулей?

Я прочитал эту документацию https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc/wiki/Home и создал файл конфигурации / маршрутов.

Контроллер:

class Testcase extends MX_Controller {
   function index()
   {
      echo "test1";
      $this->load->model('testcase/testcase_model');
      echo "test2";
   }
}

Я использовал "эхо", чтобы увидетьгде он терпит неудачу, потому что он не возвращает мне никакой ошибки ... поэтому, когда я загружаю модуль, он просто не работает, я тоже пробовал это так

$this->load->model('testcase_model',NULL,TRUE);

, но все равно безуспешно ...

Модель:

class Testcase_model extends MX_Model {
   function __construct(){  
      parent::__construct();  
   }    

   function testcase(){
      return "success";
   }
}

При установке библиотеки я копирую стороннюю папку и в основную.

Может кто-нибудь датьмне какую-то подсказку по этому вопросу?

Спасибо!

Ответы [ 5 ]

6 голосов
/ 24 марта 2012

Не существует MX_Model, о котором я знаю, просто расширьте CI_Model.

4 голосов
/ 07 августа 2013

Вы можете использовать

$this->load->model('YOUR_MODULE_FOLDER_NAME/MODEL_NAME');

чтобы загрузить внешнюю модель.

1 голос
/ 23 марта 2012

В HMVC ваши файлы / папки должны иметь следующую структуру:

application/modules/testcase
 controllers
  testcase
 models
  testcase_model
 views
  testcase_view

если вы загружаете модель из контроллера вашего модуля, вы должны загрузить ее следующим образом:

$this->load->model('testcase/testcase_model','tm');

Вы должны также дать название модуля.Если нет - загляните в каталог application / models.

0 голосов
/ 22 сентября 2014

Обновление модулей / Testcase / models / Testcase_model.

class Testcase_model extends CI_Model {

  function __construct()
    {
        // Call the Model constructor
        parent::__construct();
        $this->load->database();
    }
   function get_login(){
     $query=$this->db->query("SELECT * FROM test");
     return $query;
   }

}

и вызов от контроллера модуля

$this->load->model('Testcase/Testcase_model');
$data['result']=$this->Testcase_model->get_login();

Надеюсь, что это поможет :)

0 голосов
/ 24 марта 2012

Для CI + HMVC я загружаю модули нагрузки следующим образом:

$this->load->model('model_name');
$this->model_name->method($data);
...