administrador.base.controller.init.model_init_campos - gamboamartin/administrador GitHub Wiki

model_init_campos

Esta función privada se encarga de inicializar los campos de un modelo de vista, agregando un tipo específico a un campo dado.

Signatura


private function model_init_campos(array $campos_view, string $key, string $type): array

Parámetros

  • $campos_view (array): Un array asociativo que representa los campos de la vista.

  • $key (string): La clave del campo al que se le asignará el tipo.

  • $type (string): El tipo que se asignará al campo especificado por $key.

Retorna

  • Tipo: array
  • Descripción: Un array actualizado que representa los campos de la vista, con el tipo asignado al campo especificado por $key.

Explicación Detallada

Validación de clave y tipo: Se verifican si las variables $key y $type están vacías. Si alguna de ellas está vacía, se devuelve un mensaje de error indicando que la clave o el tipo está vacío.

Asignación del tipo al campo: Se asigna el tipo especificado por $type al campo especificado por $key en el array $campos_view.

Retorno de campos actualizados: Se devuelve el array $campos_view actualizado con el tipo asignado al campo especificado.

Ejemplos

// Ejemplo: Inicializar campos de un modelo de vista
$campos = [
    'nombre' => ['type' => 'string', 'required' => true],
    'edad' => ['type' => 'integer', 'required' => false],
];
$campo_clave = 'edad';
$tipo_asignado = 'integer';
$resultado_actualizado = model_init_campos($campos, $campo_clave, $tipo_asignado);
if (is_array($resultado_actualizado)) {
    // Utilizar los campos actualizados
    var_dump($resultado_actualizado);
} else {
    // Manejar el mensaje de error
    echo "Hubo un error al inicializar los campos: ";
    var_dump($resultado_actualizado);
}

Código de la Función

private function model_init_campos(array $campos_view, string $key, string $type): array
    {
        $key = trim($key);
        if($key === ''){
            return $this->error->error(mensaje: 'Error key esta vacio',data:  $key, es_final: true);
        }

        $type = trim($type);
        if($type === ''){
            return $this->error->error(mensaje: 'Error type esta vacio',data:  $type, es_final: true);
        }

        $campos_view[$key]['type'] = $type;
        return $campos_view;

    }