Я получаю эту трассировку на моем сервере Apache2 при попытке загрузить изображение. Я использую Python 3.5.2 и Pillow 5.0.0 и Django 2.1.1
Мне удалось успешно загрузить изображения, когда я работаю на своем локальном хосте, но когда я загрузил этот код на сервер apache2, он дает эту трассировку. Подушка находится в requiremnts.txt, хотя. Нет, где в коде я явно пытаюсь импортировать PIL, но, кажется, вызывается.
Я попытался установить подушку и PIL. Я попытался удалить PIL, удалить подушку, я попытался переустановить оба. Кажется, ничего не работает.
View.py
from django.http import JsonResponse, HttpResponse
from django.shortcuts import render
from django.core import serializers
from manager.models import Manager, Inspection
from . import InspectorService
from . import InspectionService
import json
from .forms import InspectionImageForm
... more unrelevant code here ...
def upload_image(request):
if request.method == 'POST':
form = InspectionImageForm(request.POST, request.FILES)
inspection_id = request.POST.get('inspection_id')
if form.is_valid():
m = Inspection.objects.get(id = inspection_id)
m.image = form.cleaned_data['image']
m.save()
return JsonResponse({'error': False, 'message': 'Uploaded Successfully', 'location': m.image.name})
else:
return JsonResponse({'error': True, 'errors': form.errors})
else:
return JsonResponse({'error': True, 'errors': 'Post error'})
forms.py
from django import forms
class InspectionImageForm(forms.Form):
image = forms.ImageField()
inspection_id = forms.IntegerField()
Traceback
File "/opt/myenv/lib/python3.5/site-packages/django/core/handlers/exception.py" in inner
34. response = get_response(request)
File "/opt/myenv/lib/python3.5/site-packages/django/core/handlers/base.py" in _get_response
126. response = self.process_exception_by_middleware(e, request)
File "/opt/myenv/lib/python3.5/site-packages/django/core/handlers/base.py" in _get_response
124. response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/var/www/html/CMPUT401/computronix/manager/views.py" in upload_image
119. if form.is_valid():
File "/opt/myenv/lib/python3.5/site-packages/django/forms/forms.py" in is_valid
185. return self.is_bound and not self.errors
File "/opt/myenv/lib/python3.5/site-packages/django/forms/forms.py" in errors
180. self.full_clean()
File "/opt/myenv/lib/python3.5/site-packages/django/forms/forms.py" in full_clean
381. self._clean_fields()
File "/opt/myenv/lib/python3.5/site-packages/django/forms/forms.py" in _clean_fields
397. value = field.clean(value, initial)
File "/opt/myenv/lib/python3.5/site-packages/django/forms/fields.py" in clean
584. return super().clean(data)
File "/opt/myenv/lib/python3.5/site-packages/django/forms/fields.py" in clean
147. value = self.to_python(value)
File "/opt/myenv/lib/python3.5/site-packages/django/forms/fields.py" in to_python
613. from PIL import Image
Exception Type: ImportError at /manager/upload_image/
Exception Value: No module named 'PIL'