administrador.modelado.joins.init_renombre.21.11.0 - gamboamartin/administrador GitHub Wiki
Esta función inicializa los nombres de las tablas y sus respectivos modelos para ser utilizados en operaciones de renombrado en el contexto del framework.
private function init_renombre(string $tabla, string $tabla_enlace): stdClass|array
$tabla (string): El nombre de la tabla principal. $tabla_enlace (string): El nombre de la tabla de enlace.
- array|stdClass: La función devuelve un objeto stdClass que contiene los nombres de las tablas y sus respectivos modelos ajustados. En caso de error, devuelve un array que contiene detalles del error.
- Eliminación de espacios en blanco: Se eliminan los espacios en blanco de los nombres de las tablas utilizando la función trim.
- Validación de nombres de tablas vacíos: Se verifica si alguno de los nombres de las tablas está vacío. Si es así, se devuelve un mensaje de error correspondiente indicando que los nombres de las tablas no pueden estar vacíos.
- Ajuste de los nombres de las tablas y modelos: Se llama a la función ajusta_name_models para ajustar los nombres de las tablas y obtener sus modelos correspondientes. Se almacenan los resultados en la variable $data_models.
- Creación del objeto $data: Se crea un objeto stdClass llamado $data para almacenar los nombres de las tablas y sus modelos.
- Asignación de valores al objeto $data: Se asignan los valores correspondientes al objeto $data. Esto incluye los nombres de las tablas y sus modelos ajustados.
- Devolución del objeto $data: Se devuelve el objeto $data que contiene los nombres de las tablas y sus modelos ajustados.
// Llamada a la función init_renombre
$tabla = 'usuarios';
$tabla_enlace = 'pedidos';
$resultado = init_renombre($tabla, $tabla_enlace);
if (is_object($resultado)) {
echo "Nombres de las tablas y modelos ajustados:";
echo "<pre>";
print_r($resultado);
echo "</pre>";
} else {
echo "Error: " . $resultado['mensaje'];
}
/En este ejemplo, se llama a la función init_renombre con los nombres de las tablas principal y de enlace. Dependiendo del resultado, se imprime el objeto $data que contiene los nombres de las tablas y sus modelos ajustados o el mensaje de error correspondiente si se produce algún problema.
*/
private function init_renombre(string $tabla, string $tabla_enlace): stdClass|array
{
$tabla = trim($tabla);
if($tabla === ''){
return $this->error->error(mensaje: 'Error tabla no puede venir vacia', data: $tabla,es_final: true);
}
$tabla_enlace = trim($tabla_enlace);
if($tabla_enlace === ''){
return $this->error->error(mensaje: 'Error $tabla_enlace no puede venir vacia', data: $tabla_enlace,
es_final: true);
}
$data_models = $this->ajusta_name_models(tabla: $tabla, tabla_enlace: $tabla_enlace);
if(errores::$error){
return $this->error->error(mensaje: 'Error al ajustar nombre del modelo', data: $data_models);
}
$data = new stdClass();
$data->tabla = $data_models->tabla->tabla;
$data->class = $data_models->tabla->name_model;
$data->tabla_enlace = $data_models->tabla_enlace->tabla;
$data->class_enlace = $data_models->tabla_enlace->name_model;
return $data;
}