Version 8, last updated by anthemfor182 at August 31, 2007 21:32 UTC
find first
25.1.4 find_first
Sintaxis
[“columns: ...”])
El método "find_first" devuelve el primer registro de una entidad ó la primera ocurrencia de acuerdo a unos criterios de búsqueda ú ordenamiento. Los parámetros son todos opcionales y su orden no es relevante, cuando se invoca sin parámetros devuelve el primer registro insertado en la entidad. Este metodo es muy flexible y puede ser usado de muchas formas:
Ejemplo
- $this->Usuarios->find_first("conditions: estado='A'","order: fecha desc");
En este ejemplo buscamos el primer registro cuyo estado sea igual a “A” y ordenado descendentemente, el resultado de este se carga a la variable $Usuarios e igualmente devuelve una instancia del mismo objeto ActiveRecord en caso de éxito ó false en caso contrario.
Con el método find_first podemos buscar un registro en particular a partir de su id de esta forma:
Ejemplo
- $this->Usuarios->find_first(123);
Así obtenemos el registro 123 e igualmente devuelve una instancia del mismo objeto ActiveRecord en caso de éxito ó false en caso contrario .
Kumbia genera una advertencia cuando los criterios de búsqueda para find_first devuelven más de un registro, para estro podemos forzar que se devuelva uno solo mediante el parámetro limit, de esta forma:
Ejemplo
- $this->Usuarios->find_first("conditions: estado='A' ","limit: 1");
Cuando queremos consultar solo algunos de los atributos de la entidad podemos utilizar el parámetro columns así:
Ejemplo
- $this->Usuarios->find_first("columns: nombre, estado");
Cuando especificamos el primer parámetro de tipo string, ActiveRecord asumirá que son las condiciones de búsqueda para find_first, así:
Ejemplo
- $Usuarios->find_first("estado='A'");
De esta forma podemos también deducir que estas 2 sentencias arrojarían el mismo resultado:
Ejemplo
- $this->Usuarios->find_first("id='123'");
- $this->Usuarios->find_first(123);