Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Django admin and showing thumbnail images

I'm trying to show thumbnail images in Django admin, but I can only see the path to the images, but not the rendered images. I don't know what I'm doing wrong.

Server media URL:

from django.conf import settings (r'^public/(?P<path>.*)$', 'django.views.static.serve',{'document_root': settings.MEDIA_ROOT}), 

Function model:

def image_img(self):         if self.image:             return u'<img src="%s" />' % self.image.url_125x125         else:             return '(Sin imagen)'         image_img.short_description = 'Thumb'         image_img.allow_tags = True 

admin.py:

class ImagesAdmin(admin.ModelAdmin):      list_display= ('image_img','product',)  

And the result:

<img src="http://127.0.0.1:8000/public/product_images/6a00d8341c630a53ef0120a556b3b4970c.125x125.jpg" /> 
like image 885
Asinox Avatar asked Sep 06 '09 07:09

Asinox


People also ask

How can I remove extra's from Django admin panel?

Take a look at the Model Meta in the django documentation. Within a Model you can add class Meta this allows additional options for your model which handles things like singular and plural naming. Show activity on this post. inside model.py or inside your customized model file add class meta within a Model Class.


1 Answers

This is in the source for photologue (see models.py, slightly adapted to remove irrelevant stuff):

def admin_thumbnail(self):     return u'<img src="%s" />' % (self.image.url) admin_thumbnail.short_description = 'Thumbnail' admin_thumbnail.allow_tags = True 

The list_display bit looks identical too, and I know that works. The only thing that looks suspect to me is your indentation - the two lines beginning image_img at the end of your models.py code should be level with def image_img(self):, like this:

def image_img(self):     if self.image:         return u'<img src="%s" />' % self.image.url_125x125     else:         return '(Sin imagen)' image_img.short_description = 'Thumb' image_img.allow_tags = True 
like image 117
Dominic Rodger Avatar answered Sep 22 '22 23:09

Dominic Rodger