Coffee bytes

Apuntes de desarrollo web con GNU/Linux, Python y Javascript

Búsquedas de texto con Django y Postgres

El jueves, 6 de mayo de 2021 por Eduardo Zepeda
Tiempo de lectura: 8 minutos

Algunas veces cuando tecleamos nos equivocamos en una letra, podemos repetirla, omitirla o cambiarla por otra. Ese error puede arrojar una serie de resultados diferentes en una búsqueda web, o incluso carecer de resultados. Quizás para un blog no represente una amenaza nada, pero para un ecommerce puede significar la perdida de una venta, y

Leer más

¿Cómo hacer accesible mi localhost usando Ngrok?

El jueves, 29 de abril de 2021 por Eduardo Zepeda
Tiempo de lectura: 3 minutos

Me topé con Ngrok intentando redirigir la notificación de un pago de Mercado Pago a mi localhost, para hacer pruebas. Funcionaba más o menos así. Mercado pago te otorgaba una dirección url a donde redigir al comprador para efectuara el pago. Una vez terminado el pago, Mercado Pago hacía una petición HTTP a cualquier dirección

Leer más

¿Cómo funcionan los permisos y grupos en Django?

El sábado, 17 de abril de 2021 por Eduardo Zepeda
Tiempo de lectura: 6 minutos

La primera vez que me enteré de que Django tenía un sistema de permisos, hace ya muchos años, me pareció algo bastante esotérico, sin mucha utilidad y fácil de replicar, que equivocado estaba en aquel entonces. Después me di cuenta de que el sistema de permisos integrado era una maravilla y ahorraba muchísimo código, además

Leer más

No cometas este error al usar arrays en Python

El miércoles, 7 de abril de 2021 por Eduardo Zepeda
Tiempo de lectura: 2 minutos

El otro día estaba resolviendo una kata en codewars, uno de los pasos del problema necesitaba de una matriz bidimensional, en palabras más mundanas: un array de arrays. En Python es súper sencillo crear una matriz bidimensional usando el operador de multiplicación, como si se tratara de números. arr = [0]*5 #[0, 0, 0, 0,

Leer más

¿Cómo subir múltiples imágenes en Django?

El martes, 30 de marzo de 2021 por Eduardo Zepeda
Tiempo de lectura: 4 minutos

Seguramente ya sabes como subir una imagen usando un modelo de Django pero, ¿y si no queremos subir una sino múltiples imágenes? Generando un entorno virtual Creemos primero un entorno virtual y entrémos en él. Si no conoces Pipenv o no sabes como usarlo, revisa mi entrada sobre Pipenv. pipenv shell Instalación de Django Primero

Leer más

¿Por qué deberías usar Django Framework?

El martes, 23 de marzo de 2021 por Eduardo Zepeda
Tiempo de lectura: 4 minutos

¿Por qué usar Django en un mundo donde todo es Javascript? ¿De verdad vale la pena aprender un Framework de Python en un ecosistema que se empecina en Frameworks escritos en Javascript? Pues yo creo que sí y a continuación te expongo algunas de las razones. Las ventajas de Django Su ORM es sencillo y

Leer más

Throttling en Nginx

El sábado, 13 de marzo de 2021 por Eduardo Zepeda
Tiempo de lectura: 4 minutos

El throttling en Ngnix nos permite limitar el número de peticiones a un cierto usuario. Lo anterior es útil para prevenir peticiones excesivas por parte de un usuario que mantengan el sistema ocupado. Por otro lado, también es una manera de disuadir intentos de averiguar una contraseña por fuerza bruta o incluso ataques DDOS. Si

Leer más

¿Cómo hacer un switch o match en Python?

El sábado, 6 de marzo de 2021 por Eduardo Zepeda
Tiempo de lectura: 4 minutos

Se anunció Python 3.10 y viene con algo que muchos desarrolladores echaban de menos de otros lenguajes: el switch statement. Sí, ese trozo de código que evalúa una expresión y la compara con múltiples casos para decidir que ejecutar. Python no lo tenía implementado y muchos desarrolladores recurrían a ciertos trucos para imitarlo. Te recuerdo

Leer más

5 librerías geniales de React que debes conocer

El martes, 2 de marzo de 2021 por Eduardo Zepeda
Tiempo de lectura: 3 minutos

Después de varias semanas publicando sobre Django escribí una entrada corta de React, sobre librerías, porque no solo de Python vive el hombre. Estás son algunas de las librerías que considero más útiles de React. Por razones obvias están excluidas React-router, Redux y otras demasiado conocidas. Así como también algunos Frameworks de React tales como

Leer más

¿Para que sirve Django genericForeignkey?

El lunes, 22 de febrero de 2021 por Eduardo Zepeda
Tiempo de lectura: 3 minutos

Quieres usar Django para relacionar un modelo con otro usando una llave foránea, pero el modelo que quieres relacionar es uno diferente para cada entrada de la base de datos. Django ofrece una solución a tu problema, una llave foránea genérica llamada genericForeignKey y el modelo ContentType, del que ya hable anteriormente. El tipo de

Leer más