[Programación] Re: [Programación] RE: [Programació
n] Re: [Programación] Re: [Programa
ción] RE: [Programación] Proyecto sus
cripción a jornadas
Nicolás Aimetti
programacion@lugro.org.ar
Wed, 30 Nov 2005 15:15:44 +0000
> Aclarámelo con un ejemplo.
> Gracias.
>
attr varchar(30)
Supongamos que en attr guardas el string "OBLIGATORIO:SHADOW"
Esto significaria que el campo es obligatorio y que en el formulario no
debe hacerse un echo de los caracteres que ingresa el usuario (sería el
type password de los input de html).
Para saber si en ese campo es obligatorio podes o bien buscar la regex
"OBLIGATORIO" en el campo attr (forma relajada) o separar los attributos
por el ':' haciendo un split y fijarte que existe el atributo
'OBLIGATORIO' (forma más precisa).
No digo que esto vaya a ser completamente necesario para nuestra
aplicación (quizás el atributo OBLIGATORIO si), lo que digo es que si
uno luego desea extender la aplicación tener un campo en donde se puedan
especificar attributos del campo puede ser de utilidad.
El otro metodo que mencione, el de usar un Or no es muy típico de la
programación web, si muy común en C y lenguajes de bajo nivel.
attr int(10)
O sea,
supongamos definimos estos atributos... (lo hago en C que estoy más
acostumbrado)
#define OBLIGATORIO (1)
#define SHADOW (1<<1)
#define CRYPT (1<<2)
Luego si queres que en que el attr sea obligatorio y este encriptado
haces...
int attr = CRYPT | OBLIGATORIO ;
Lo insertas en la base...
Luego para saber si es obligatorio haces:
int es_obligatorio = (attr & OBLIGATORIO);
>>O sino agregar un solo campo 'atributos' donde estas opciones se
>>especifiquen como atributos separados por comas, o mediante Or (esto
>>implicaria flags binarios), como para poder extender la aplicacion sin
>>necesidad de modificar el modelo de datos.
>
Saludos,
Nicolás.