Я пытался работать с функциями загрузки Django, но я просто не могу заставить его работать.Моя форма уже содержит enctype="multipart/form-data"
, так что это не может быть проблемой.В любом случае вот с чем я работаю:
Это моя модель
class Photo(models.Model):
""" This represents a Photo
"""
caption = models.CharField(_("caption"), max_length=100, null=True,
blank=True, unique=True)
image = ValidateImageField(
upload_to='uploaded_photos/Published/%Y/%B/%d/',
content_types=['image/jpeg', 'image/gif', 'image/png'],
max_upload_size= settings.FILE_UPLOAD_MAX_MEMORY_SIZE
)
source = models.URLField(_("source"), null=True, blank=True)
status = models.CharField(_("status"), max_length=1, choices=STATUS_CHOICES, default='H')
date_added = models.DateTimeField(_("date_added"), auto_now_add=True)
date_modified = models.DateTimeField(_("date_modified"), auto_now=True)
slug = models.SlugField(_("slug"), max_length=50, unique=True)
extra_info = models.TextField(_("extra_info"), null=True, blank=True)
Это моя форма:
class UploadImageForm(forms.ModelForm):
class Meta:
model = Photo
field = ('image', 'caption', 'source', 'extra_info',)
exclude = ('status','slug',)
Это мой взгляд:
def submit_image(request):
if request.method == 'POST':
form = UploadImageForm(request.POST, request.FILES)
if form.is_valid:
form.save()
return redirect('photos.views.upload_success')
form = UploadImageForm()
return render(request,'photos/upload.html', {
'form': form
})
Я уже пытался использовать метод чанков, как показано в djangodocs, и это тоже не работает.Может ли быть проблема с моим кодом, если это так, я был бы признателен, если кто-то может указать на это.Заранее спасибо.