php - open - joomla wikipedia
Joomla get(''Items'') y como funciona (1)
Estoy suponiendo 1.7 / 2.5 + aquí ...
En el MVC de Joomla! La vista de contacts ( ContactViewContacts que extends JView ) carga automáticamente los contacts modelo (o en la terminología J! ContactModelContacts ) que como clase extends JModelList .
El get() busca en la vista para obtener datos de un modelo registrado o una propiedad de la vista.
Asi que;
$this->items = $this->get(''Items'');
es en realidad una llamada al modelo ContactModelContacts que tiene un getItems() coincidente en su parent .
El archivo de modelo com_contact/models/contacts.php no implementa sus propios getItems() , por lo que se getItems() de la clase JModelList (se encuentra en /libraries/joomla/application/component/modellist.php ).
Esto, a su vez, llama a getListQuery() - no es magia, simplemente herencia.
El $this->get(''Pagination'') está haciendo lo mismo, es decir. Accediendo a la implementación en los modelos padre.
El $this->get(''State'') está probablemente regresando a la implementación de JModel .
Estoy mirando la línea 34 de /administrator/components/com_contact/views/contacts/view.html.php donde dice $this->items = $this->get(''Items''); Lo que no entiendo es cómo está llamando a la protected function getListQuery() en la línea 123 de /administrator/components/com_contact/models/contacts.php
También hay algunas otras cosas que no entiendo cómo funcionan ... como
$this->pagination = $this->get(''Pagination'');
$this->state = $this->get(''State'');
¿Cuáles son estas llamadas? Miré la documentación de "get ()" pero no dice a qué llaman en realidad porque no veo ningún método llamado getPagination, getState o getItems ... Parece que get (''Items'') es de alguna manera Llamando mágicamente a getListQuery ().