J'essaye de télécharger une image via le panneau d'administration de Django. Je cours sur Google App Engine et j'utilise le plugin filetransfers (je ne sais pas si l'un ou l'autre est pertinent par rapport au problème que j'ai).Téléchargement d'une image via Admin dans Django
De mon modelys.py:
from django.db import models
# Create your models here.
class CarouselItem (models.Model):
caption = models.CharField(max_length=200,blank=True)
order = models.IntegerField()
carousel_image = models.ImageField(upload_to='uploads/carousel_image/%Y/%m/%d/')
def __unicode__(self):
return self.caption
De admin.py:
from carousel.models import CarouselItem
from django.contrib import admin
from imperavi.admin import ImperaviAdmin
class carouselAdmin(ImperaviAdmin):
list_display = ('caption','order')
admin.site.register(CarouselItem, carouselAdmin)
L'erreur que je reçois est "Aucun module appelé Image". Je n'ai pas installé PIL. Ai-je besoin de l'installer pour activer cette fonctionnalité?
Mise à jour: voici retraçage qui a provoqué l'erreur:
Environment:
Request Method: POST
Request URL: http://127.0.0.1:8000/admin/carousel/carouselitem/add/
Django Version: 1.3.1
Python Version: 2.7.2
Installed Applications:
['django.contrib.admin',
'django.contrib.contenttypes',
'django.contrib.auth',
'django.contrib.sessions',
'djangotoolbox',
'autoload',
'dbindexer',
'django.contrib.staticfiles',
'portfolio',
'EBoardMembers',
'Calendar',
'filetransfers',
'positions',
'imperavi',
'chunks',
'carousel',
'djangoappengine']
Installed Middleware:
('autoload.middleware.AutoloadMiddleware',
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware')
Traceback:
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/core/handlers/base.py" in get_response
111. response = callback(request, *callback_args, **callback_kwargs)
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/contrib/admin/options.py" in wrapper
307. return self.admin_site.admin_view(view)(*args, **kwargs)
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/utils/decorators.py" in _wrapped_view
93. response = view_func(request, *args, **kwargs)
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/views/decorators/cache.py" in _wrapped_view_func
79. response = view_func(request, *args, **kwargs)
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/contrib/admin/sites.py" in inner
197. return view(request, *args, **kwargs)
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/utils/decorators.py" in _wrapper
28. return bound_func(*args, **kwargs)
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/utils/decorators.py" in _wrapped_view
93. response = view_func(request, *args, **kwargs)
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/utils/decorators.py" in bound_func
24. return func(self, *args2, **kwargs2)
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/db/transaction.py" in inner
217. res = func(*args, **kwargs)
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/contrib/admin/options.py" in add_view
864. if form.is_valid():
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/forms/forms.py" in is_valid
121. return self.is_bound and not bool(self.errors)
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/forms/forms.py" in _get_errors
112. self.full_clean()
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/forms/forms.py" in full_clean
267. self._clean_fields()
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/forms/forms.py" in _clean_fields
282. value = field.clean(value, initial)
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/forms/fields.py" in clean
503. return super(FileField, self).clean(data)
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/forms/fields.py" in clean
163. value = self.to_python(value)
File "/Users/Zach/Documents/Cornell/Activities/MICC/new_website/MICC_app_engine/django/forms/fields.py" in to_python
528. import Image
Exception Type: ImportError at /admin/carousel/carouselitem/add/
Exception Value: No module named Image
Pouvez-vous poster le retraçage qui donne cette erreur? Il se peut que vous deviez installer PIL. –
oui c'est une exigence pour l'image – catherine
@SimeonVisser J'ai ajouté les commentaires de retraçage – zpesk