django-thumbs ya tiene nuevo sitio web: http://djangothumbnails.com. La versión 0.3 de django-thumbs funciona correctamente con la versión de desarrollo de Django actual y soluciona algunos problemas de las versiones anteriores. django-thumbs permite crear miniaturas de imágenes para los campos ImageField de tus modelos.
Para usar django-thumbs en tus modelos importa ImageWithThumbsField y reemplaza los campos ImageField por campos ImageWithThumbsField. En cada campo de imagen podrás incluir un nuevo argumento sizes que defina los tamaños de imagen de las miniaturas que deseas. Por ejemplo:
from django.db import models
from thumbs import ImageWithThumbsField
class Persona(models.Model):
foto = ImageWithThumbsField(upload_to='images', sizes=((125,125),(200,200)))
otra_foto = ImageWithThumbsField(upload_to='images')
Al subir una imagen se crearán las miniaturas definidas mediante el atributo sizes y al eliminar el objeto se eliminarán las miniaturas asociadas. Por lo demás ImageWithThumbsField funciona igual que un ImageField normal y no introduce ningún cambio en las tablas de la base de datos de tu modelo. Siempre puedes volver a utilizar ImageField en lugar de ImageWithThumbsField cuando quieras.
Para obtener la url de las miniaturas en las plantillas basta con acceder al atributo url_tamaño. En nuestro caso sería imagen.url_125x125 e imagen.url_200x200.
Publicado por Antonio Melé el Domingo 22 d Marzo d 2009
Compártelo:
| Categorías:
aplicaciones,
comunidad,
imágenes
Algo interesante que nos aporta django-command-extensions es poder crear una representación gráfica de nuestros modelos (o por decirlo de otro modo nuestro esquema de ...
Django es una excelente plataforma de desarrollo web, con una enorme comunidad de desarrolladores, siendo el framework web Python más popular. Sin embargo, Django ...
Hace un par de días se ha liberado el código de EveryBlock bajo licencia GPL. EveryBlock ofrece noticias e información local sobre barrios de ...
django-localeurl es una aplicación que permite el uso de códigos de idiomas en las URLs de nuestro proyecto. Esto trae la ventaja de que ...
Guay!
Estaba buscando algo parecido...
Tengo un par de dudas, de todas maneras....
Soporta hacer el resize solo por uno de los lados? (por aquello de que la mayoría de las veces no sabes la proporción de la imagen que te van a subir)
Soporta (o tienes intención de soportarlo) el hacerse amigo de la interfaz de admin, y poder mostrar thumbnails en ella?
Un saludete y buen trabajo!
@Andor,
Aún no soporta hacer el resize en función de un sólo lado pero es algo que estoy pensando añadir antes de la 1.0. De momento, si no te fías de las proporciones y quieres todas las imágenes igualadas dale un tamaño cuadrado al thumbnail (p. ej. (120,120): hará que se recorte el mayor cuadrado centrado posible en la imagen antes de hacer el resize y el resultado será bastante satisfactorio porque tendrás miniaturas del mismo tamaño y ninguna imagen quedará estirada o alargada.
Añadir los thumbnails al admin es bastante sencillo utilizando una función para incluir HTML, pero es probable que añada algún widget para facilitarlo.
Saludos!
Suscríbete a nuestro feed RSS y al feed de la comunidad para estar al tanto de todo lo que ocurre entorno a Django.
Tú también puedes escribir en éste blog. Para hacerlo basta con que nos digas sobre qué quieres escribir un artículo relacionado con Django.
Utilizar un formulario para modificar 2 modelos
Descubriendo objetos similares por sus etiquetas