estoy usando CodeIgniter para mi proyecto y tengo este modelo de clases que llamo Génesis que se parece a esto:cómo heredar un modelo de otro modelo en CodeIgniter
class Genesis_model extends CI_Model {
function __construct() {
parent::__construct();
}
function get() {
return 'human soul';
}
}
y tengo otro modelo, almacenados en el mismo directorio, que se extiende Genesis_model
class Human_model extends Genesis_model {
function __construct() {
parent::__construct();
}
function get_human() {
return $this->get();
}
}
Human_model se utiliza por el controlador humano
class Human extends CI_Controller {
function __construct(){
parent::__construct();
$this->load->model('human_model');
}
function get_human() {
$data['human'] = $this->human_model->get_human();
$this->load->view('human/human_interface', $data);
}
}
si ejecuto el código, se producirá un error que apunta a return $ this-> get(). se lee "Error fatal: clase 'Genesis_model' no encontrado en ... \ application \ models \ human_model.php en la línea 2".
uso este método porque casi todos mis modelos compartían una estructura casi idéntica. Reúno la funcionalidad similar en Genesis, mientras que los otros modelos solo sirven como proveedores de datos únicos para las tablas que representan. funciona bien en mi asp.net (vb.net) pero no sé cómo hacerlo en codeigniter.
hay una manera para que Human_model herede Genesis_model. no creo que se me permita usar include ('genesis_model.php'). No sé si funciona tampoco.
gracias de antemano.
respuestas interesantes aquí http://stackoverflow.com/questions/46338/can-you -access-a-model-from-inside-another-model-in-codeigniter – steve