2014-02-10 4 views
2

Я знаю, как загрузить несколько файлов через django, но у меня возникли проблемы при загрузке папки, если в ней есть подпапки. Дженго не может получать подпапки. Я нашел причину, потому что браузер использует '.' для представления папки, но django не может разобрать ее, а затем прекратить разбор. Есть ли элегантный способ исправить это?django Как загрузить папку

код питона:

def uploader_single(request): 
    data = {} 
    if request.method == 'POST': 
     if True: 
      for afile in request.FILES.getlist('file'): 
       new_file = UploadFileSingle(file = afile) 
       new_file.save() 

      return HttpResponseRedirect('') 
     else: 
      print "form is not valid" 
      return HttpResponseRedirect('') 
    else: 
     print 'not post' 

Python код:

class UploadFileSingle(models.Model): 
    file  = models.FileField(upload_to='files/%Y/%m/%d', models.FilePath) 
    uploaded_at = models.DateTimeField(auto_now_add=True) 
    models.FilePathField.recursive = True 
    models.FilePathField.allow_folders = True 
    updated_at = models.DateTimeField(auto_now=True) 

    def some_folder = FilePathField(path='some_path', recursive=True, allow_files=True, allow_folders=True,)' 

HTML код:

<input type="file" name="file" multiple = "true" webkitdirectory="true" directory = "true"/> 

ответ

1

Существует новая тема, которая задает тот же вопрос, и я попытался ответить:

Django directory upload get sub-directory names

В основном это поведение по умолчанию Django, если вы хотите иметь различное поведение, вы должны написать свой собственный upload handlers

-2

вы можете использовать Джанго Filer

rerfer: https://github.com/stefanfoulis/django-filer

+0

Большое спасибо. Но не могли бы вы объяснить, как я могу точно применить фильтр на моем случае? Спасибо. – Tengerye

+0

фильтр django не может этого сделать. Мое заключение джанго еще не может сделать. – Tengerye

+0

Ничего общего с вопросом –

Смежные вопросы