2010-07-05 8 views
6

Ich bin sooo nah ... aber ich sehe nicht die Verbindung von der Upload-Ansicht zum Modell. Wenn ich den Callback in FileField des Modells verwende, funktioniert der Upload, aber Ich bin mir nicht sicher, wo die eigentliche Dateikopie stattfindet. Das Ziel ist es, sicherzustellen, dass chunking passiert, aber die Dateikopie Aktion scheint irgendwo versteckt zu sein?Django File Uploads und Modell FileField

Hier ist, was ich habe:

Modell:

def get_media_upload_dir(instance, filename): 
    user_id = instance.user.id 
    upload_dir = "%s/%d/%s" % (settings.MEDIA_ROOT, user_id, filename) 
    print "Upload dir set to: %s" % upload_dir 
    return upload_dir 

class MediaFile(models.Model): 
    media_file  = models.FileField(upload_to=get_media_upload_dir) 
    download_count = models.PositiveIntegerField(default=0) 

Ausblick:

def file_upload(request, course_id):  
    if request.method == 'POST': 
     form = FileUploadForm(request.POST, request.FILES) 
     if form.is_valid(): 
      uploaded = form.cleaned_data['file_upload'] 
      mediaFile = MediaFile(media_file=uploaded, 
           owner=request.user.profile, 
           creator=request.user.profile) 
      mediaFile.save() 

      return HttpResponseRedirect('/course/%s/' % course_id) 
    else: 
     form = FileUploadForm() 
    return render_to_response('course/file_upload.html', {'form':form,'course':course}, context_instance=RequestContext(request)) 
+2

Haben Sie http://docs.djangoproject.com/en/dev/topics/http/file-uploads/?from=olddocs#handling-uploaded-files gelesen? Es scheint genau das zu sein, wonach du suchst. Ich möchte nicht antworten, weil ich nicht sicher bin, was Sie eigentlich fragen. – Bartek

Antwort

Verwandte Themen