Uploader de imagem / arquivo simples no Django

Não consegui encontrar nada na internet, e é a primeira vez que encontro um framework que não inclui uma aula para isso.

Então aqui está, sem segurança, foi feito apenas para administradores, verifica os arquivos com o mesmo nome e adiciona um número depois até que não haja outro arquivo com o mesmo nome.

from django.shortcuts import render, render_to_response
from django.contrib.admin.views.decorators import staff_member_required
from django.template import RequestContext
from django import forms
from django.http import HttpResponse
from django.conf import settings

import os

def save_file(file, path = 'upload/'):
filename
= file._get_name()

path2
= settings.MEDIA_ROOT + str(path) + str(filename)

ii
= ''
if(os.path.exists(path2)):
ii
= 1
while os.path.exists(path2):
ii
= ii + 1
path2
= path2 + str(ii)
fd
= open(path2, 'wb')
for chunk in file.chunks():
fd
.write(chunk)
fd
.close()
return '![alt](settings.MEDIA_URL + '/' + str(path) + str(filename) + str(ii) + ')'

class ImageUploadForm(forms.Form):

image = forms.ImageField()


@staff_member_required

def uploadImage(request):

url = ''

if request.method == '
POST':
form = ImageUploadForm(request.POST, request.FILES)

if form.is_valid() and form.is_multipart():

url = save_file(request.FILES['
image'])
else:

form = ImageUploadForm()

else:

form = ImageUploadForm()

context = { '
form': form, 'url': url}
return render_to_response('
blogs/admin/upload.html', context, RequestContext(request))