Ejemplo n.º 1
0
 public function testObjeto()
 {
     $campos = array('a' => array('_compuesto' => array('id' => array('_mapeo' => "a"), 'nombre' => array('_mapeo' => "n"))), 'b');
     $datos = array('a' => 10, 'n' => 'xx', 'b' => 2, 'z' => 4);
     $obj = rest_hidratador::hidratar_fila($campos, $datos);
     //        (
     //        [a] => 10
     //        [b] => 2
     //        )
     $this->assertEquals(2, count($obj));
     $this->assertEquals(2, $obj['b']);
     $this->assertEquals(10, $obj['a']['id']);
     $this->assertEquals('xx', $obj['a']['nombre']);
 }
Ejemplo n.º 2
0
 /**
  * Se consume en GET /personas/{id}
  * @summary Retorna datos de una persona. 
  * @param_query $con_imagen integer Retornar además la imagen de la persona, por defecto 0
  * @responses 200 {"$ref": "Persona"} Persona
  * @responses 400 No existe la persona
  */
 function get($id_persona)
 {
     //toba::logger()->debug("Usuario: " . rest::app()->usuario->get_usuario());
     /**Obtengo los datos del modelo*/
     $incluir_imagen = (bool) rest::request()->get('con_imagen', 0);
     $modelo = new modelo_persona($id_persona);
     $fila = $modelo->get_datos($incluir_imagen);
     if ($fila) {
         /**Transformción al formato de la vista de la API -
          * Si faltan campos se generarán 'undefined_index'. Si sobran, no se incluyen.
          * La fila contiene exactamente los campos de la especificación */
         $fila = rest_hidratador::hidratar_fila($this->get_spec_persona($incluir_imagen), $fila);
     }
     /**Se escribe la respuesta*/
     rest::response()->get($fila);
 }