views.py は表示に関わるファイルです。基本的なview関数の仕組みを紐解いていきましょう
0. 構成
まず、Flaskのview関数はこのような構成になっています。
①はルーティングとリクエストメソッドの部分。
②はロジックの部分
③は返り値のん部分
これを順に解説していきます。
1 ルーティング
こちらは、URLパスを管理する部分と、クライアントからのリクエスト方式を判別する部分に分けられます。
例えば、 @app.route(“/hello”)とかくと、 /hello というURLに対応するビューを書くことになります。
また、リクエスト方法とは、ブラウザから、クリックした時のアクセス方式です。これは、formで決めることができます。methods=[“GET”, “POST”]と書くと、GETメソッドと、POSTメソッドに対応します。
リクエストメソッドについてはこちらの記事がおすすめです。
2 ロジック
この関数に来た時の動作を書きます。バックエンドでは、会員登録の処理や、ユーザーがアップロードしたファイルの保存など、さまざまなデータ処理が行われます。その動作を書きます。実際の運用では、if文でエラーを吐かせたり、logを出力して動作を記録したりと、入り組んだ記述をしてview関数の動作を書くことになります。
view関数のロジック部分の主な役割
- formの中身を取り出して、データベースに登録する
- ログインする
- ファイルを保存する
formsの表示については、こちらの記事がおすすめです。
ファイルアップロードについてはこちらをご覧ください。
3 表示
最後は、表示部分です。render_template、または、redirectで、表示したいものを返します。また、return jsonify として、json形式で出力を返すこともあります。
このように、returnで表示したいものや返したいものを定義します。
render_templateとredirectの違いは、こちらをご覧ください!
まとめ
view関数を使って、バックエンドのロジックを効かせて、クライアントに表示させるものをコントロールできます。Pythonでバックエンドを書くメリットを存分に活かしましょう!
Flaskアプリ開発の全てがここに!アプリ構成の全てはこちらをご覧ください!