Buenas llevo apenas un par de dias con Code Igniter y he realizado el tutorial entero de su página web y después he ojeado varios manuales más. El concepto de MVC como su funcionamiento lo tengo claro pero tengo la siguiente duda.
Tengo el controlador products.php Código PHP:
<?php
class Products extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->model('products_model');
}
public function index()
{
$data['Products'] = $this->products_model->get_productsHome();
$data['title'] = 'Products Home';
$this->load->view('templates/header', $data);
$this->load->view('products/index', $data);
$this->load->view('templates/footer');
}
public function get_products()
{
$data['Products'] = $this->products_model->get_productsHome();
$this->load->view('products/listProductsHome', $data);
}
}
?>
Modelo products Código PHP:
<?
class Products_model extends CI_Model {
public function __construct()
{
$this->load->database();
}
public function get_productsHome()
{
$query = $this->db->get('productCompare');
return $query->result_array();
}
}
?>
Luego en la carpeta
views/products tengo el archivo listProductsHome.php con este contenido
Código PHP:
<?php foreach ($Products as $news_item): ?>
<h2><?php echo $news_item['productName1'] ?></h2>
<div id="main">
<?php echo $news_item['productName2'] ?>
</div>
<?php endforeach ?>
Básicamente hasta aquí hemos creado una vista que recupera los "productos" de la Base de datos y los prepara para mostrar.
Ahora voy al archivo que cargo al iniciar mi URl que es el archivo /views/templates/home.php que tiene el siguiente contenido
Código PHP:
<div class="home">
<a href="index.php/products/create">Crear enquesta</a>
<hr><br>
Ver ultimas "preguntas"<br>
</div>
Y dentro de aquí intento poner el resultado de la vista anterior pero no se muy bien como , he intentado a instanciar un objeto Productos y llamar al método
get_products sin éxito.
He probado algo como esto sin éxito
Código PHP:
$products = new Products();
$products::get_products();
Voy bien encaminado ? Alguna ayuda / sugerencia ?
Gracias