2011-07-13 3 views
2

J'ai un dossier avec du contenu statique, site_media. Il est servi à l'aide django.views.static.serveLes miniatures Django, simples

#settings.py: 
STATIC_DOC_ROOT = 'site_media/' 

et

#urls.py: 
urlpatterns = patterns('', 
    (...) 
    url(r'^site_media/(?P<path>.*)$', 'django.views.static.serve', 
     {'document_root': settings.STATIC_DOC_ROOT, 'show_indexes':True}) 
) 

Maintenant, je veux juste montrer des versions plus petites de ces photos sur mon site. J'espérais qu'il y avait une application avec un tag de modèle qui pourrait facilement le faire.

Je suis en train de rêver à propos smth comme: { % img "/site_media/foo.png" "100x100" %}

qui créerait une image quelque part dans redimensionnée site_media, puis retourner l'URL pour cela, qui pourrait être "site_media/resized/foo_100x100.png".

J'ai regardé Sorl-Thumbnail, mais honnêtement, je ne comprends pas vraiment comment cela fonctionne. Désolé si j'ai manqué, mais il me semble qu'ils n'expliquent jamais le flux de la requête http à la réponse. Et je ne suis pas sûr si Sorl convient même à mon problème.

+1

Salut @Lucy. La vignette de Sorl fera exactement ce que vous voulez. C'est assez simple à mettre en œuvre: http://thumbnail.sorl.net/template.html – Brandon

Répondre

1

Il y a une telle chose. Je l'utilise normalement quelque chose basé sur ce modèle personnalisé filtre:

http://djangosnippets.org/snippets/955/

+0

Donc, ce que vous voulez dire, c'est qu'il n'y a rien de tel qu'un module téléchargeable, mais je devrais le construire moi-même? –

+0

Je ne connais aucune application que vous venez d'ajouter. Mais si vous téléchargez l'extrait que j'ai posté, placez-le dans un dossier appelé templatetags (avec un fichier __init__.py), puis utilisez {% load%} dans votre modèle, vous pouvez facilement générer des miniatures: image resized to 200x300