Domanda

C'è un modo per aggiungere un ambito predefinito per un modello basato Zend_Db_Table_Abstract.

Voglio essere in grado di interrogare un modello con alcune condizioni preso come predefinito.

es.

  • cancellato = false
  • Nome ordine crescente
È stato utile?

Soluzione

È possibile eseguire l'override del metodo Zend_Db_Table_Abstract:: _fetch() e modificare il Zend_Db_Table_Select generato in là prima di recuperare le righe dalla scheda database. Per quanto ne so tutti fetch*-metodi e find() in Zend_Db_Table_Abstract ridursi a questo-recupero-metodo generica riga (oltre Zend_Db_Table_Abstract::fetchNew() naturalmente), in modo che il codice modificato sarà chiamato righe everytime vengono recuperate dal database.

/**
 * Support method for fetching rows.
 *
 * @param  Zend_Db_Table_Select $select  query options.
 * @return array An array containing the row results in FETCH_ASSOC mode.
 */
protected function _fetch(Zend_Db_Table_Select $select)
{
    $select->where('deleted = false')->order('name asc');
    return parent:: _fetch($select);
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top