在不使用modelForm的情况下上传和调整django中的图像大小

时间:2016-10-25 08:44:00

标签: python django image

我必须调整图像大小并使用django将其上传到服务器,目前我正在使用fileSystem存储来上传文件,但我的代码是

def create_new_event(request, steps=None):
    if request.method == 'POST':
        stepFirstForm = CreateEventStepFirstForm(request.POST, request.FILES)
        if stepFirstForm.is_valid():
            if request.FILES['artist_image']:
                randomArtistImage = ''.join(random.choice('0123456789ABCDEFabcdefghijklmn') for i in range(8));
                myfile = request.FILES['artist_image']
                fs = FileSystemStorage()
                fileName, fileExtension = os.path.splitext(myfile.name)
                artistImageName = randomArtistImage+'-'+str(request.user.id)+str(fileExtension)
                filename = fs.save('event_artists_images/'+artistImageName, myfile)
                uploaded_artist_image_url = fs.url(filename)

使用此代码我可以将图像移动到event_artists_images文件夹,但我还想将此图像调整为300 * 300像素。我怎样才能做到这一点。如果我可以使用PIL Image类,那么在服务器上如何上传和调整文件大小。

1 个答案:

答案 0 :(得分:1)

这个问题已被多次回答,除非我遗漏了什么。 这里的答案应该有助于举例:Django resize image during upload 或者https://blog.louwii.fr/2016/03/django-resize-an-image-on-upload/