私のforms.pyファイルに私は持っています
class myForm(Form):
fileName = FileField()
私のviews.pyファイルには
form = myForm()
if form.validate_on_submit():
fileName = secure_filename(form.fileName.file.filename)
私の.htmlファイルには
{% block content %}
<form action="" method="post" name="simple" enctype="multipart/form-data">
<p>
Upload a file
{{form.fileName()}}
</p>
<p><input type="submit" value="Submit"></p>
</form>
{% endblock %}
送信を押すと機能するようですが、ファイルはどのプロジェクトディレクトリにもありません。
Form.fileName.file.saveで.saveを呼び出す必要がありました
myFile = secure_filename(form.fileName.file.filename)
form.fileName.file.save(PATH+myFile)
あなたはこれを見ましたか:
http://flask.pocoo.org/docs/patterns/fileuploads/#uploading-files
UPLOAD_FOLDERなどのいくつかの構成を設定する必要があります。また、views.pyの投稿コードに表示されていないsave()関数を呼び出す必要があります。
file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
Form.fileName.fileで、「。save」を呼び出します。
filename = secure_filename(form.fileName.file.filename)
file_path = os.path.join(app.config['UPLOAD_FOLDER'], filename)
form.fileName.file.save(file_path)
ユーザーが「../../../../home/username/.bashrc」などの不正なファイル名を入力しないように、必ずsecure_filename()を使用してください。
Os.path.joinを使用すると、使用しているOSに関係なく、正しい絶対パスが生成されます。