Flask への移植指針
基本方針
本フレームワークは、必要になれば Flask へ最小限の修正で移植できるよう、API 形状をある程度 Flask 風に保つ。
対応の考え方
@app.route('/path')Flask の
@app.routeに比較的素直に移せる。app.queryFlask では
request.args/request.form/request.filesに分離される。init_html(target='json')Flask では
jsonifyまたはResponseへ置き換える。render_templateFlask 標準の
render_templateに置き換え可能。run()Flask では WSGI サーバと
app.runに置き換わる。
移植しやすくするための実装ルール
ルート関数は薄く保つ
入力パースを業務ロジックに混ぜない
返却用辞書生成を別関数に分ける
HTML テンプレートの変数名を整理しておく
認証は decorator ベースに寄せる
移植時に見直すべき点
セッション管理
Cookie 処理
認証・認可の分離
エラーハンドラ
ファイルアップロード処理
ログの構成