2010-07-05 7 views
6

Je suis tellement proche ... mais je ne vois pas vraiment la connexion de la vue de téléchargement au modèle. Lorsque j'utilise le rappel dans le FileField du modèle, le téléchargement fonctionne, mais Je ne suis pas sûr d'où la copie du fichier a lieu. L'objectif est de s'assurer que chunking est en cours, mais l'action de copie de fichier semble être caché quelque part?Uploads de fichiers Django et Model FileField

Voici ce que j'ai:

Modèle:

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) 

Vue:

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

Avez-vous lu http://docs.djangoproject.com/fr/dev/topics/http/file-uploads/?from=olddocs#handling-uploaded-files? Cela semble être ce que vous cherchez. Je ne veux pas répondre parce que je ne suis pas sûr de ce que vous demandez réellement. – Bartek

Répondre

Questions connexes