Convenciones del Modelo
Lista de las convenciones configurables propias del modelo.
Pueden modificarse con el metodo $modelo->setConfig($configuracion,$valor_nuevo); o bien en las funciones que acepten un arreglo $config como parámetro. Por ejemplo $config[$configuracion]=$valor_nuevo; $modelo->setData($data,$config);
Las modificaciones con setConfig son permanentes durante el tiempo de ejecucion, en cambio las modificaciones al config por parámetro en los métodos normales solo afectan a ese método y a los métodos invocados por este. Es decir que en el ejemplo, cuando $modelo->setData($data,$config); finalize su ejecución el modelo recupera su configuración original.
prefix
Prefijo de las tablas en la BD, en mu_usuario es mu
$modelo->setConfig("prefix",$valor);
Valor por defecto: Prefijo que se pasa por parámetro en el constructor.
module
Nombre del modulo en singular
$modelo->setConfig("module",$valor);
Valor por defecto: Nombre del módulo que se pasa por parámetro en el constructor.
hasLangs
Sera True si el modulo tiene idiomas, False de lo contrario
$modelo->setConfig("hasLangs",$valor);
Valor por defecto: Valor que se pasa por parámetro en el constructor.
arraySet
Array de donde se obtienen los datos para guardar
$modelo->setConfig("arraySet",$valor);
Valor por defecto: $_POST
idName
Nombre del identificador de registro en en la tabla principal del módulo
$modelo->setConfig("idName",$valor);
Valor por defecto: "id"
id
Valor del id al ir a buscar un elemento a la bd
$modelo->setConfig("id",$valor);
Valor por defecto: $_POST[$modelo->getConfig("idName")];
xidioma
Sufijo de la tabla de idioma, de tenerla.
$modelo->setConfig("xidioma",$valor);
Valor por defecto: "xidioma"
idiomaField
Nombre del campo identificador de idioma en la tabla xidioma
$modelo->setConfig("idiomaField",$valor);
Valor por defecto: "idioma"
deleted_field
Nombre del campo que identifica que la tabla tendra borrado logico y no fisico.
$modelo->setConfig("deleted_field",$valor);
Valor por defecto: "deleted"
lang
Idioma que se utilizara, por defecto se detecta si es $idioma o $idioma_gestio si estamos o no en la gestión
$modelo->setConfig("lang",$valor);
Valor por defecto: $_SERVER["PHP_SELF"]=="/index.php" ? $GLOBALS["idioma"] : $GLOBALS["idioma_gestio"];
idNameXIdioma
Nombre del identificador en la tabla xidioma, en caso de que exista. Por defecto id_[Nombre del modulo]
$modelo->setConfig("idNameXIdioma",$valor);
Valor por defecto: $modelo->getConfig("idName")."_".$modelo->getConfig("module");
where
En los metodos que accederan a la bd puede especificarse un WHERE en estos casos
$modelo->setConfig("where",$valor);
Valor por defecto: ""
Ej: $config["where"]="id = $id AND total > 5"; $modelo->getData("",$config);
Exceptuando $modelo->saveMultipleRelationship() en los demas casos el uso de $config["where"] anula las condiciones normales del método.
Es decir que en el ejemplo dado, getData por defecto buscaria el registro cuyo $config["idName"] = $config["id"], pero al
tener seteado el $config["where"] se atendrá solo a nuestro "where". Por eso, si lo que deseamos es que busque por el id Y ADEMÁS por alguna otra
condición debemos estipular ambas condiciones, por ejemplo: $config["where"]="id = $id AND total > 5";
where_deleted
En $modelo->saveMultipleRelationship(), permite especificar un where para el delete.
$modelo->setConfig("where_deleted",$valor);
Valor por defecto: ""
Ej: $config["where_deleted"]="promedio_alumno < 7"; $modelo->saveMultipleRelationship("Alumnos",$data,$config);
whereXIdioma
En los metodos que accederan a la bd puede especificarse un WHERE para la tabla por idiomas en estos casos
$modelo->setConfig("whereXIdioma",$valor);
Valor por defecto: ""
Ej: $config["whereXIdioma"]="id = $id AND idioma != 'es'"; $modelo->getData("",$config);
Solo sirve para $modelo->getData. El uso de $config["where"] anula las condiciones normales del método.
Es decir que en el ejemplo dado, getData por defecto buscaria el registro cuyo $config["idNameXIdioma"] = $config["id"], pero al
tener seteado el $config["where"] se atendrá solo a nuestro "where". Por eso, si lo que deseamos es que busque por el id Y ADEMÁS por alguna otra
condición debemos estipular ambas condiciones, por ejemplo: $config["whereXIdioma"]="id = $id AND idioma != 'es'";
rebuildCache
PrewebHelper cachea la estructura de las tablas del módulo para evitar sucesivas consultas cada vez que se requiera durante la ejecución de programa. Si debe reconstruirse el cache de la estructura del modulo cada ves debe setearse esta valor como True.
$modelo->setConfig("rebuildCache",$valor);
Valor por defecto: false
CommentSeparator
Para las configuraciones enviadas por el comment de la tabla se especifica el caracter(es) que separa las diferentes instrucciones
$modelo->setConfig("CommentSeparator",$valor);
Valor por defecto: ";"
CommentAsignation
Para las configuraciones enviadas por el comment de la tabla se especifica el caracter(es) que separa el nombre de la variable de su valor
$modelo->setConfig("CommentAsignation",$valor);
Valor por defecto: ":="
emptyMultipleRelation
Con que se relaciona un elemento que perdio su relación N..1 cuando se setea una relación múltiple con delete = false.
$modelo->setConfig("emptyMultipleRelation",$valor);
Valor por defecto: "";
En una estructura por categorias donde los elementos deben estar si o si asociados a algo, aunque sea a la categoria raiz cuyo id es $id_raiz, podria ser: $config["emptyMultipleRelation"]=$id_raiz;
showName1N
Campo que se mostrará en los selectes de las relaciones 1..N en caso que no se especifique en el comment de la tabla
$modelo->setConfig("showName1N",$valor);
Valor por defecto: "nombre";
uploadExtensions
Extensiones permitidas al subir un archivo, separadas por coma
$modelo->setConfig("uploadExtensions",$valor);
Valor por defecto: "gif,png,jpg,jpeg,doc,txt,xls,pdf,zip,rar";
imageTypes
MIME types de las imágenes permitidas y que serán redimensionadas, separadas por coma
$modelo->setConfig("imageTypes",$valor);
Valor por defecto: "image/gif,image/jpeg,image/pjpeg,image/png,image/tiff";
hasThumb
Tamaños y Thumbnails
$modelo->setConfig("hasThumb",$valor);
$modelo->setConfig('thumbWidth,$valor);
$modelo->setConfig('thumbHeight,$valor);
$modelo->setConfig('hasSmallThumb,$valor);
$modelo->setConfig('smallThumbWidth,$valor);
$modelo->setConfig('smallThumbHeight,$valor);
Valores por defecto para redimensionar imágenes
"hasthumb" determina si la imagen se redimensionará a mediana. Por defecto: True
"thumbWidth" es el ancho de la imagen mediana. Por defecto: 250
"thumbHeight" es el alto de la imagen mediana. Por defecto: 150
"hasSmallThumb" determina si la imagen se redimensionará a pequeña. Por defecto: True
"smallThumbWidth" es el ancho de la imagen pequeña. Por defecto: 130
"smallThumbHeight" es el alto de la imagen pequeña. Por defecto: 80
autoDelete
Si se cambia el archivo de un campo file, esta variable especifica si se borra el antiguo archivo
$modelo->setConfig("autoDelete",$valor);
Valor por defecto: true;
dateAsNow
Fecha equivalente al NOW(). Es una solucion arquitectonicamente incorrecta a un problema de mysql.
$modelo->setConfig("dateAsNow",$valor);
Valor por defecto: "1111-11-11"
Si el modelo detecta como fecha por defecto en la tabla la aquí indicada y el valor de la fecha es "", pondrá como valor
la fecha actual.