Open ifgarces opened 1 year ago
Los datos de DNI/RUT/ID son útiles para la eventualidad de cruzar datos de Ethicapp con datos de investigación obtenidos por otras fuentes, p.ej., cuestionario en papel (se usan formularios de respuesta con círculos rellenos - se leen con OCR), o cuestionario en SurveyMonkey, Google Forms, etc.
También en la eventualidad de integrar EthicApp con un LMS, como Canvas, es buena idea que esté la información de RUT/DNI/ID.
En principio, yo optaría por una validación muy elemental del campo, es decir, que sea no vacío. Incluso, se podría incorporar un campo de confirmación (al estilo correo electrónico) para asegurar que el RUT/DNI/ID esté bien ingresado.
Descripción general
Luego o mientras se aborda #65, el equivalente a
user.rut
debe ser único para cada usuario, o mejor dicho, debe investigarse si para el caso internacional, dada la diferencia de formatos de los national IDs, debiera ser único este atributo. En cuyo caso, agregar simple validación de ID nacional único (no confundir conuser.id
que es la única clave primaria deuser
).Analizar la posibilidad para, en casos chilenos, aplicar verificación sencilla del formato de RUT.
¿Por qué es necesario?
Para que la columna RUT tenga sentido, debe ser único para cada usuario y al menos debe validarse que tenga el formato de RUT/RUN. Esto, por supuesto, en un contexto de producción.
Información adicional
En la base de datos de producción (o al menos, en un dump relativamente reciente) se encontraron varios usuarios con RUTs de prueba o inválido (repetido entre varios usuarios). Al implementar esto, debe considerarse gestionar apropiadamente esas filas para que cumplan con la validación, lo cual puede considerarse riesgoso si es que, en algún punto del código, se considera
user.rut
como clave primaria para encontrar algún usuario (lo cual es altamente incorrecto). Requiere de inspección de código back y front.