#python #flask #firebase-storage #dropzone
# #python #flask #firebase-хранилище #dropzone
Вопрос:
все в порядке?
Я разрабатываю проект, в котором на какой-то странице пользователь может загружать видео. Для этого предложения я использовал библиотеку flask-dropzone и добился успеха с изображениями, но я не могу загружать большие файлы, например видео. Я изучал, как я могу настроить это, следуя документации, но до сих пор безуспешно.
Я пытаюсь загрузить в хранилище firebase. Он работает нормально, если я выполняю загрузку с консоли firebase. Поэтому я думаю, что это проблема flask-dropzone. Кто-нибудь знает, что происходит? Большое вам спасибо ^^
Конфигурации Dropzone (main.py ):
#--dropzone configs--#
app.config['DROPZONE_UPLOAD_MULTIPLE'] = False
app.config['DROPZONE_ALLOWED_FILE_CUSTOM'] = True
app.config['DROPZONE_ALLOWED_FILE_TYPE'] = 'video/*'
app.config['DROPZONE_MAX_FILE_SIZE'] = 50000
app.config['DROPZONE_REDIRECT_VIEW'] = 'edicaopadrao'
app.config['DROPZONE_UPLOAD_ON_CLICK'] = False
#the upload route
@app.route("/upload-principal", methods=['GET', 'POST'])
@login_required
def uploadprincipal():
email = session['email']
registro = {"usuario": email}
if request.method == 'POST':
for f in request.files.getlist('file'):
print(str(f.content_type)[0:5])
if str(f.content_type)[0:5] == 'video':
arquivo = secure_filename(f.filename)
arquivo2 = bucket.blob(arquivo)
arquivo2.upload_from_file(f)
arquivo2.make_public()
session['video_upload'] = arquivo2.public_url
registro[f'path: '] = arquivo2.public_url
ref.child("Teste").push(registro)
return render_template('upload-principal.html')
the page.html:
<head>
<title>Flask App</title>
{{ dropzone.load() }}
{{ dropzone.style('border: 2px dashed #0087F7; margin: 10%; min-height: 400px;') }}
</head>
<body id="container-body">
...
</div>
<h1>Descarregue aqui os videos:</h1>
{% include "includes/_message.html" %}
{{ dropzone.create(action_view='uploadprincipal') }}
{{ dropzone.config(max_file_size=5000) }}
</body>
Может быть, было бы неплохо переключить flask-dropzone на dropzone cdn?