Ver Mensaje Individual
  #2 (permalink)  
Antiguo 19/05/2009, 14:28
Avatar de GatorV
GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: ayuda a comprender la nueva forma del modelo en zendframework 1.8

Cita:
Iniciado por zfStuden Ver Mensaje
esto si que no lo entiendo bien en el capitulo de quickstart de zend framework

framework.zend.com/docs/quickstart/create-a-model-and-database-table

esta bastante raro la verdad es que no entiendo ni u con p primero dice que hay una clase llamada Zend_Application_Module_Autoloader ademas haora el controlador frontal es una clase que se hereda
No, el FrontController sigue siendo el FrontController, lo que incorporo Zend 1.8 es algo que hacia mucha falta, una clase BootStrap, muchos desarrolladores creaban su propia clase, Zend tomo el mejor modelo y lo incorporo al Framework lo que lo hace más limpio.

Cita:
Iniciado por zfStuden Ver Mensaje

Código PHP:
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
    protected function 
_initAutoload()
    {
        
$autoloader = new Zend_Application_Module_Autoloader(array(
            
'namespace' => 'Default',
            
'basePath'  => dirname(__FILE__),
        ));
        return 
$autoloader;
    }

   


que cargo mas o menos aqui o se me acabaron las neuronas o que paso el zend framework volvio a cambiar radicalmente
Sirve para crear un autoloader para tus Modelos, anteriormente dentro de cada action que incorporara un modelo tenias que hacer el tipico:

Código php:
Ver original
  1. public function somethingAction() {
  2.      require_once 'application/models/Comments.php';
  3.      $Comments = new Model_Comments();
  4. }

Ahora con el nuevo modo de Autoloader puedes cargar directo si le indicas a Zend el Path:

Código php:
Ver original
  1. public function somethingAction() {
  2.      $Comments = new Model_Comments();
  3. }

Sirve para Formularios y para Modelos lo cual es muy bueno.

Cita:
Iniciado por zfStuden Ver Mensaje

ademas haora tenemos esto que se parece un poco al propel

Código PHP:
class Default_Model_Guestbook
{
    protected 
$_comment;-> propiedad
    
protected $_created;
    protected 
$_email;
    protected 
$_id;

    public function 
__set($name$value);-> a que seteara esto ???
    public function 
__get($name);

    public function 
setComment($text);
    public function 
getComment();

    public function 
setEmail($email);
    public function 
getEmail();

    public function 
setCreated($ts);
    public function 
getCreated();

    public function 
setId($id);
    public function 
getId();

    public function 
save();-> metodos de zend db table abstracts 
    
public function find($id);
    public function 
fetchAll();

esto se esta poniendo raro sigo sin entender que hace esto si con zend db table Abstract teniamos metodos que podiamos hacer nosotros por lo meno podiamos hacer una funcion estatica que nos devolviera el nombre y serian menos archivos

y pare de contar si alguno entiende bien el capitulo que me lo explique porque los traductores no me sirven de nada
Eso te esta creando clases base, siempre puedes optar para usar las clases "padre" aunque lo más recomendado siempre es que implementes clases especificas para tus modelos, es tu responsabilidad como programador el hacerlo.

Saludos.