Вам следует рассмотреть возможность использования ImageField в вашей модели. Например, в models.py вы должны иметь:
def get_random_filename(car_picture, filename):
extension = filename.split('.')[-1]
return u'_%s_%s.%s' % (random.randint(0,10000000),
random.randint(0,10000000),
extension)
class CarPicture(models.Model):
title = models.TextField()
image = models.ImageField(upload_to=get_random_filename)
А в ваших взглядах вы бы просто имели:
picture = CarPicture(title="Some Title", image=request.FILES['image'])
picture.save()
При этом изображение будет сохранено на диске с использованием случайно сгенерированного имени файла, и в поле изображения в базе данных будет указан путь к изображению. Вы также можете получить URL для изображения с помощью:
picture.image.url()
поэтому шаблон может иметь:
<img src="{{picture.image.url}}" title="{{picture.image.title}}"/>