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.