簡體   English   中英

django將文件保存到文件夾

[英]django save file into folder

我想將文件保存到單獨的文件夾中,但是文件夾名稱我將從我不知道的表格中獲取。 但是我現在有可以保存到user_(某物)的工作表。

誰能告訴我如何定義模型類和視圖以獲取文件夾名稱和我上傳的文件自動保存到單獨的文件夾中。

models.py

def content_file_name(instance, filename):
    return "user_{id}/{file}".format(id=instance, file=filename)

class Audio(models.Model):
    audiofile = models.FileField(upload_to=content_file_name)

views.py

def saved_file(request):
    # Handle file upload
    if request.method == 'POST':
        form = AudioForm(request.POST, request.FILES)
        if form.is_valid():
            newaudio = AudioForm()
            newaudio = Audio(audiofile = request.FILES['audiofile'])
            newaudio.save()

            #This is for redirect to the file save_list after post 
            return HttpResponseRedirect(reverse('app.views.saved_file'))
    else:
        form = AudioForm()

    # Load documents for the save_list page
    showfiles = Audio.objects.all()
    return render_to_response(
        'audio/file_upload.html',
        {'showfiles': showfiles, 'form': form},
        context_instance=RequestContext(request)
    )

您可以將文件夾名稱作為模型的一部分,然后相應地修改content_file_name函數嗎?

def content_file_name(instance, filename):
    return "user_{id}/{folder}/{file}".format(id=instance, folder=instance.folder_name, file=filename)

class Audio(models.Model):
    audiofile = models.FileField(upload_to=content_file_name)
    folder_name = models.CharField(max_length=1000)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM