lunes, 30 de junio de 2008

Creando modelos

A partir de la estructura de directorios que hicimos en el post anterior, vamos a crear nuestros primeros modelos.

Los modelos contienen la logica de negocio, en nuestro caso los modelos estan fuera de los modulos, para evitar la dependencia de un modulo especifico. Esto se debe a que un modulo, puede usar varios modelos, y no su modelo en particular.

En mi caso los modelos heredan la clase Zend_Db_Table, pero podemos incluir una clase propia intermedia. Eso es totalmente configurable.

Los metodos publicos de los modelos son estaticos e instancian a la clase, esto se hace para que se puedan acceder desde cualquier lado del sistema, sin la necesidad de instanciar la clase, y si usamos Zend Studio for Eclipse, al escribir el nombre de la clase, por ejemplo Usuarios:: nuestro IDE nos muestra el listado de metodos publicos.

una clase modelo puede tener la siguiente estructura





class Usuarios extends Zend_Db_Table
{
protected $_name = 'usuarios';
public static function getUsuarios()
{
$usuarios = new Usuarios ();
return $usuarios->fetchAll();
}
}
?>


Para llamar al metodo getUsuarios desde cualquier parte del sistema podemos hacer Usuarios::getUsuarios(); y nos va a devolver los registros de la tabla usuarios.

No hay comentarios: