administrador.base.orm.modelo_base.name_modelo.21.8.0 - gamboamartin/administrador GitHub Wiki

name_modelo

Esta función ajusta el nombre de un modelo al formato correcto, considerando si es un namespace especial y el namespace del modelo.

Signatura

private function name_modelo(bool $es_namespace_especial, string $modelo, string $namespace_model): string|array


Parámetros

$es_namespace_especial (bool): Indica si el modelo pertenece a un namespace especial. $modelo (string): El nombre completo del modelo que se va a ajustar. $namespace_model (string): El namespace del modelo al que se ajustará el nombre.

Retorna

  • string|array: La función devuelve un string que representa el nombre ajustado del modelo. En caso de un error, devuelve un array con detalles del error.

Explicación Detallada

  • Verificación del modelo vacío: Se verifica si el nombre del modelo proporcionado está vacío. Si es así, se devuelve un mensaje de error indicando que el modelo está vacío.
  • Ajuste del nombre del modelo base: Si el modelo no pertenece a un namespace especial, se llama a la función name_modelo_base para ajustar el nombre del modelo al formato base. Si se produce un error, se devuelve un mensaje de error correspondiente.
  • Ajuste del nombre del modelo dentro del namespace dado: Si se proporciona un namespace para el modelo, se llama a la función name_modelo_ajustado para ajustar el nombre del modelo dentro del namespace dado. Si se produce un error, se devuelve un mensaje de error correspondiente.
  • Devolución del nombre ajustado del modelo: Se devuelve el nombre ajustado del modelo.

Ejemplos

$es_namespace_especial = false;
$modelo = 'ModeloEspecial';
$namespace_model = 'gamboamartin\administrador\models';

$resultado = name_modelo($es_namespace_especial, $modelo, $namespace_model);

if (is_string($resultado)) {
    echo "Nombre ajustado del modelo: " . $resultado;
} else {
    echo "Error: " . $resultado['mensaje'];
}

/*En este ejemplo, se llama a la función name_modelo con los parámetros correspondientes. Dependiendo del resultado, se imprime el nombre ajustado del modelo o el mensaje de error correspondiente si se produce algún error.*/

Código de la Función

private function name_modelo(bool $es_namespace_especial, string $modelo, string $namespace_model): string|array
    {
        $modelo = trim($modelo);
        if($modelo === ''){
            return  $this->error->error(mensaje: "Error modelo esta vacio",data: $modelo, es_final: true);
        }
        if(!$es_namespace_especial) {
            $modelo = $this->name_modelo_base(modelo: $modelo);
            if(errores::$error){
                return  $this->error->error(mensaje: "Error al maquetar name modelo",data: $modelo);
            }
        }
        if($namespace_model !==''){
            $modelo = $this->name_modelo_ajustado(modelo: $modelo, namespace_model: $namespace_model);
            if(errores::$error){
                return  $this->error->error(mensaje: "Error al maquetar name modelo",data: $modelo);
            }
        }
        return trim($modelo);
    }