Alexander A. E.Django developer

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

Publicado el 22 Jun 2018

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 …

Implementar un sitemap en django

Publicado el 24 Apr 2018

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 …

Descargar un archivo y grabarlo en un FileField

Publicado el 19 Apr 2018

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 …

Aplicaciones que utilizo

Publicado el 12 Apr 2018

Hay quien me pregunta (1 o 2 personas, pero alguien a fin de cuentas) por las herramientas, aplicaciones o webs que utilizo regularmente, así que para evitarme enumerar todo otra vez escribo un post (en realidad porque me gusta escribir).


Las herramientas/apps/webs que utilizo con frecuencia son:

1. Feedly: es un lector de RSS que permite organizar las fuentes de las noticias y acceder desde un navegador web o alguna de sus apps.

2. Evernote: es una herramienta …

Cómo integrar django y mailgun

Publicado el 08 Apr 2018

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 …

123456789