получение файлов dropzone в представлениях Django - PullRequest
0 голосов
/ 21 марта 2019

Может ли кто-нибудь помочь мне получить входную информацию из DЗзоны в представлении функций в Django? Я написал этот код в моем шаблоне для dropzone:

index.html * * 1004

 <form  method="post" action="{% url 'index' %}" enctype="multipart/form-data" class="dropzone" id="myDropzone" >
                                    {% csrf_token %}                          

                            </form>

и для URLs.py:

 url('^$', views.UI_index, name='index'),

и в views.py я получаю опубликованный файл с помощью функции UI_index:

def UI_index(request):
file_upload_message=''
if request.method=='post':
    f = request.FILES['file']
    file_upload_message='the file is received!'

 return render(
    request,
    'cta_UI/index.html',
    {'file_upload_message':file_upload_message},
    )

в index.html Я получаю значение file_upload_message как {{file_upload_message}}, но, похоже, оно не работает должным образом, кажется, что условие if request.method=='post' не работает, тогда как я могу опубликовать загруженный файл для просмотра? когда почтовый метеод точно выполняется в дропзоне? Хотя это не мой настоящий проект, это первый шаг к тому, чтобы получить нужный файл ... пожалуйста, помогите мне в этом. Благодарю.

1 Ответ

0 голосов
/ 21 марта 2019

request.method

Вы можете попробовать следующий код

def UI_index(request):
    if request.method=='POST':
        up_file = request.FILES['file']
        if up_file:
            destination = open('/tmp/' + up_file.name, 'wb+')
            for chunk in up_file.chunks():
                destination.write(chunk)
            destination.close()
            file_upload_message='the file is received!'
        else:
            file_upload_message='the file is missing!'



    return render(request,'cta_UI/index.html',
        {'file_upload_message':file_upload_message},)
...