3

여러 업로드 된 파일을 저장, 내 템플릿에
<input type="text" name="name" value="" />
<input type="file" name="file" multiple/>

있습니다. 업로드를 클릭하면
form = MyForm(request.POST, request.FILES)
은 많은 uloaded 파일 목록의 마지막 파일 하나만 저장합니다. form = MyForm(request.POST, request.FILES) blah blah 양식을 사용하여 업로드 된 모든 파일을 저장하려면 어떻게해야합니까? 감사합니다내가 업로드하고 내 응용 프로그램에서 여러 파일을 저장할 장고

편집
Myform이 모델에서 모델 양식입니다.

class Docs(models.Model):  
    name = models.CharField(max_length=128) 
    file = models.FileField(max_length=100, upload_to="documents/") 

답변

4

당신은 어쩌면 MYFORM에 request.FILES['file'] 또는 request.FILE.get('file')를 사용합니다. 파일 만 반환합니다.

request.FILE.getlist('file')을 사용하면 여러 파일을 가져올 수 있습니다. 보기에


:

.... 
form = MyForm(request.POST, request.FILES) 
if form.is_valid(): 
    name = form.cleaned_data['name'] 
    for f in request.FILES.getlist('file'): 
     Docs.objects.create(name=name, file=f) 
    return HttpResponse('OK') 
... 
+0

감사 @falsetru, 어떻게 양식을 사용하여 파일을 저장 하겠어? – Alexxio

+0

@AlexKasina, 내가 귀하의 질문에 언급했듯이, 'MyForm' 코드 없이는 대답하기가 어렵습니다. – falsetru

+0

@AlexKasina, 어떻게 든 request.FILE.getlist를 사용하는'save' 메소드를 정의하십시오. (나는이 방법으로 만 대답 할 수있다) – falsetru