Pythonを使ってウェブアプリケーションを開発する際には、Flaskというフレームワークがよく使われます。
今回は、Flaskを使ったウェブアプリケーションの開発方法について学んでいきます。
Flask
Flaskは、Pythonでウェブアプリケーションを開発するための軽量なフレームワークです。
シンプルで使いやすいAPIを提供しており、初心者にも扱いやすいです。
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return "Hello, Flask!"
if __name__ == '__main__':
app.run()
PR
ルーティングとテンプレート
Flaskでは、ルーティングをデコレータを使って簡単に設定できます。
また、Jinja2というテンプレートエンジンを使って、HTMLファイルに動的なデータを埋め込むことができます。
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def hello():
return render_template('index.html', name='John')
if __name__ == '__main__':
app.run()
フォームとデータベース
Flaskを使って、フォームからデータを受け取り、データベースに保存する方法です。
from flask import Flask, request, redirect, url_for
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///test.db'
db = SQLAlchemy(app)
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), nullable=False)
@app.route('/register', methods=['GET', 'POST'])
def register():
if request.method == 'POST':
name = request.form['name']
user = User(name=name)
db.session.add(user)
db.session.commit()
return redirect(url_for('index'))
return render_template('register.html')
if __name__ == '__main__':
app.run()
PR
RESTful APIの作成
Flaskを使って、RESTfulなAPIを簡単に作成することができます。
pythonCopy codefrom flask import Flask, jsonify
app = Flask(__name__)
@app.route('/api/users', methods=['GET'])
def get_users():
users = [
{'id': 1, 'name': 'Alice'},
{'id': 2, 'name': 'Bob'}
]
return jsonify(users)
if __name__ == '__main__':
app.run()
簡単ですが、Pythonを使ったウェブアプリケーション開発の基本的な方法を解説しました。Flaskを利用すれば、手軽にウェブアプリを開発することができます。
今後も、Flaskのドキュメントやコミュニティを参考にしながら、さらに高度な機能を追加していくことで、より充実したウェブアプリケーションを作成できるようになります。
また、Flaskだけでなく、DjangoやFastAPIといった他のフレームワークもありますので、それらを使ってウェブアプリケーションを作成する方法についても今度ご紹介します。
特に、Djangoは大規模なプロジェクトに向いており、多くの機能が標準で提供されています。
一方、FastAPIは最近人気が高まっており、非常に高速でモダンなAPIを作成できるフレームワークです。
PR