Alexander A. E.Full Stack Developer

Etiqueta: django

Búsqueda avanzada con Postgresql y Django - I

Postgresql es un motor opensource de base de datos, con el cual podemos lograr implementar sistemas de búsqueda complejos sin necesidad de recurrir a motores especializados como elasticsearch. En esta publicación se mostrarán algunas de las características de postgres y el cómo se pueden utilizar mediante Django.

Jul
20

Cómo hacer un form field de solo lectura en django

Para hacer un "Form Field" de solo lectura basta utilizar el atributo "attrs" de los widgets y agregar la propiedad readonly como en el siguiente ejemplo:

Antes:

from django import forms

class CommentForm(forms.Form):
    name = forms.CharField()

Después:

class CommentForm(forms.Form):
    name = forms.CharField(
        widget=forms.TextInput(attrs={'readonly':'readonly'})
    )

Observación:

Notemos que cuando un input es de solo lectura, el usuario no puede modificarlo pero se sigue enviando en el formulario.

Para desactivar el envío totalmente se …

Jun
22

Implementar un sitemap en django

Continuando con un proyecto personal, esta vez tuve que implementar un archivo sitemap.xml.

¿Qué es el archivo sitemap.xml?

Es un archivo que los indexadores o "search engines" como google o bing utilizan para descubrir las páginas en nuestros websites. Ya que si bien los buscadores pueden "escanear" nuestra página sin ayuda hay casos en los que se recomienda incluir un sitemap (ver sección de "Información adicional").

¿Cómo implementar un sitemap en django?

Django cuenta con una aplicación oficial …

Apr
24

Descargar un archivo y grabarlo en un FileField

Estoy desarrollando un proyecto en django y uno de los módulos debe consultar un API externo y descargar imágenes para almacenarlas en un modelo.

Mi dilema fue:

¿Cómo descargar un archivo y almacenarlo en un modelo de django?

En resumen mi caso fue el siguiente:

1. Me conectaba al API de un tercero para obtener cierta información. Yo enviaba un identificador del producto, un código.

2. El api me retornaba campos como: nombre e imagen (una url)

3. Para no …

Apr
19

Cómo integrar django y mailgun

Mailgun es un servicio que permite enviar emails transaccionales y emails masivos mediante la integración con su API o via SMTP.

Entre las ventajas de mailgun tenemos:

  • permite monitorizar el estado del envío del email: ¿llegó al destino?, ¿fue rechazado?, entre otros.
  • permite envíos masivos
  • tiene integración con webhooks para eventos como: cuando el recipiente abre el mensaje, abre un enlace, sucede un problema al enviar el email entre otros.
  • permite manejar varios dominios de forma separada para que uno …
Apr
08

Buenas prácticas para escalar Django

Mi resumen de una de las conferencias brindadas en la DjangoCon Europa 2016. Anton Pirker nos introduce en la historia (ficticia) sobre el cómo aparece un problema para escalar un nuevo proyecto con django en la vida real de un desarrollador que no tiene experiencia en la administración de servidores.

Jul
16

123