commons
app.utils.commons
Módulo de Python para validaciones comunes.
validate_email(email)
validate_phone_number(phone)
is_iterable(value)
Valida si el objeto entrante es un tipo de iterador(tuple, list
)
Parameters:
Name | Type | Description | Default |
---|---|---|---|
value | Any | el objeto a validar | required |
Returns:
Type | Description |
---|---|
bool | el resultado de la validación ó |
Examples:
object_to_xml(data, root='root')
Una función recursiva
, que intenta convertir un diccionario
, en un objeto de tipo XML
, en caso de un error, devolverá None
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
data | Any | el diccionario a ser convertido en un objeto XML | required |
root | str | un string que define la etiqueta principal del XML, por defecto | 'root' |
Returns:
Type | Description |
---|---|
str | Any | la representación en formato string de un elemento |
Examples:
flatten_list(fat_list)
Permite "aplanar" una lista de elementos de forma eficiente, y con varios niveles de anidamiento.
Notes
- la lista debe ser de tipo
tuple
ólist
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
fat_list | list[Any] | una lista de elementos a aplanar | required |
Returns:
Type | Description |
---|---|
list[Any] | la lista de elementos "aplanada" ó |
Examples:
gen_random_number(max_num)
Genera un número aletatorio criptograficamente seguro, utilizando secrets
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
max_num | int | el valor máximo a tener en cuenta, al momento de generar el número aleatorio | required |
Raises:
Type | Description |
---|---|
ValueError | en caso de que el valor máximo sea menor que 1 |
Returns:
Type | Description |
---|---|
int | el número aletatorio ó |
Examples:
allowed_files(filename, allowed_extensions)
Valida una lista de extensiones de archivos.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
filename | str | el nombre del archivo a validar | required |
allowed_extensions | list[str] | la lista de extensiones | required |
Returns:
Type | Description |
---|---|
Optional[tuple[bool, str]] | una tupla con el resultado de la validación y la extensión del archivo |
Examples:
remove_sp_chars(dirty_str)
Elimina caracteres especiales, acentos, diacríticos y cualquier otra cosa que no esté en el alfabeto inglés (a-z, A-Z, ) de una cadena. Reemplaza los caracteres especiales encontrados por un guión bajo ('').
Parameters:
Name | Type | Description | Default |
---|---|---|---|
dirty_str | str | list[str] | La cadena ò lista de caracteres a procesar | required |
Returns:
Type | Description |
---|---|
Optional[str | list[str]] | La cadena ó lista con los caracteres especiales eliminados |
Examples:
create_name_from_email(email)
Genera un nombre a partir de un email. El nombre se genera eliminando cualquier caracter especial antes de '@', y luego capitalizando la primera letra de cada palabra resultante.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
email | str | el email | required |
Returns:
Type | Description |
---|---|
Optional[str] | devuelve un nombre derivado del email ó |