私はすでに既存のコードを変更しようとしています。フォームを追加して写真を追加するだけです。複数のルートとボトルフレームワークの機能
のpython:
@route('/photos/add')
@jinja_view('add.html')
@post('/photos/add')
def upload_func():
upload = request.files.get('pic')
name, ext = os.path.splitext(upload.filename)
if ext not in ('.png', '.jpg', '.jpeg'):
return "ext is not allowed"
save_path = "/src/photo_gallery/photos"
upload.save(save_path)
return "photo is saved"
HTML:
<form action="/photos/add" method="post">
<div align="center">
<label>Picture</label>
<input type="file" name="pic" required>
</div>
<div>
<label>Info</label>
<input type="text" name="text">
</div>
<div>
<input type="submit" value="add">
</div>
</form>
サーバログ: トレースバック(最新の呼び出しの最後): ファイル「/ホーム/空/パイソン/ "/ bin/lib/python3.5/site-packages/bottle.py"、行862、_handleで return route.call(** args )
ファイル "/home/empty/python/bottle/lib/python3.5/site-packages/bottle.py"、ラッパーの行1740は、 RV =コールバック(*、** KA)
ファイル "/home/empty/python/bottle/lib/python3.5/site-packages/bottle.py"、ライン3635、ラッパーで 結果= funcを(* argsを、** kwargsから)
ファイル"/home/empty/python/bottle/src/photo_gallery/app.py"、行50、upload_func name、ext = os.path.splitext(upload.filename) AttributeError: 'NoneType'オブジェクトに属性がありません 'ファイル名 ' 127.0.0.1 - [22/Dec/2016 23:20:42 ] "GET/photos/add HTTP/1.1" 500 751