Skip to content

Instantly share code, notes, and snippets.

@gurglet
Created August 15, 2012 10:59
Show Gist options
  • Save gurglet/3358887 to your computer and use it in GitHub Desktop.
Save gurglet/3358887 to your computer and use it in GitHub Desktop.
Django image upload
from django import forms
from models import ArticleImage
class ArticleImageForm(forms.ModelForm):
class Meta:
model = ArticleImage
fields = ('image', )
from django.db import models
from django.contrib.auth.models import User
class ArticleImage(models.Model):
user = models.ForeignKey(User)
image = models.ImageField(
height_field="height",
upload_to='articles/%Y/%m',
width_field="width",
)
datetime = models.DateTimeField(auto_now_add=True)
width = models.IntegerField(default=0, blank=True)
height = models.IntegerField(default=0, blank=True)
def __unicode__(self):
return self.image.name
@login_required
def article_upload_image(request):
response = {
'error': '',
'url': '',
'image_id': '',
}
ai = ArticleImage()
ai.user = request.user
form = ArticleImageForm(request.POST, request.FILES, instance=ai)
if form.is_valid():
ai = form.save()
response['url'] = '%s%s' % (settings.MEDIA_URL, ai.image.name)
response['image_id'] = ai.id
else:
response['error'] = unicode(form.errors)
return HttpResponse('%(error)s|%(url)s|%(image_id)s' % response)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment