見出し画像

Pythonで作る簡単ウェブアプリ

ステップバイステップガイド

こんにちは!今回はPythonを使って簡単なウェブアプリケーションを作成する方法を、初心者向けに丁寧に説明していきます。ウェブアプリケーションの開発は難しそうに見えるかもしれませんが、実際にはPythonといくつかの基本的なツールを使うことで、意外と簡単に始められます。では、さっそく始めましょう!

1. 必要なツールのインストール

ウェブアプリケーションを作成するためには、いくつかのツールが必要です。ここではPythonとFlaskという軽量なウェブフレームワークを使用します。

Pythonのインストール

まずはPythonがインストールされているか確認しましょう。ターミナル(コマンドプロンプト)で以下のコマンドを入力します。

bash

コードをコピーする

python --version

Pythonがインストールされていない場合は、公式サイトからダウンロードしてインストールしてください。

Flaskのインストール

次にFlaskをインストールします。ターミナルで以下のコマンドを入力します。

bash

コードをコピーする

pip install Flask

2. Flaskアプリケーションの作成

Flaskがインストールできたら、さっそくアプリケーションを作成してみましょう。

プロジェクトディレクトリの作成

まず、新しいプロジェクトのディレクトリを作成します。

bash

コードをコピーする

mkdir my_flask_app cd my_flask_app

基本的なアプリケーションの作成

次に、app.pyというファイルを作成し、以下のコードを入力します。

python

コードをコピーする

from flask import Flask app = Flask(__name__) @app.route('/') def home(): return "Hello, Flask!" if __name__ == '__main__': app.run(debug=True)

このコードは非常にシンプルなFlaskアプリケーションです。/というルートにアクセスしたときに、「Hello, Flask!」というメッセージを表示します。

アプリケーションの実行

ターミナルで以下のコマンドを入力して、アプリケーションを実行します。

bash

コードをコピーする

python app.py

ブラウザを開いてhttp://127.0.0.1:5000/にアクセスすると、「Hello, Flask!」というメッセージが表示されます。これで基本的なFlaskアプリケーションが動作していることが確認できました。

3. テンプレートの使用

次に、HTMLテンプレートを使ってウェブページの内容を管理する方法を見ていきましょう。

テンプレートディレクトリの作成

プロジェクトディレクトリ内にtemplatesというディレクトリを作成します。

bash

コードをコピーする

mkdir templates

HTMLテンプレートの作成

templatesディレクトリ内にindex.htmlというファイルを作成し、以下のコードを入力します。

html

コードをコピーする

<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>Flask App</title> </head> <body> <h1>Hello, Flask!</h1> <p>これはテンプレートを使ったページです。</p> </body> </html>

テンプレートのレンダリング

app.pyを以下のように変更して、テンプレートをレンダリングするようにします。

python

コードをコピーする

from flask import Flask, render_template app = Flask(__name__) @app.route('/') def home(): return render_template('index.html') if __name__ == '__main__': app.run(debug=True)

アプリケーションを再度実行し、ブラウザでページをリロードすると、HTMLテンプレートが表示されるはずです。

4. フォームの処理

次に、フォームを使ってユーザーからの入力を処理する方法を見ていきましょう。

HTMLフォームの作成

index.htmlを以下のように変更して、フォームを追加します。

html

コードをコピーする

<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>Flask App</title> </head> <body> <h1>Hello, Flask!</h1> <p>これはテンプレートを使ったページです。</p> <form action="/greet" method="post"> <label for="name">名前:</label> <input type="text" id="name" name="name"> <button type="submit">送信</button> </form> </body> </html>

フォームデータの処理

app.pyを以下のように変更して、フォームから送信されたデータを処理します。

python

コードをコピーする

from flask import Flask, render_template, request app = Flask(__name__) @app.route('/') def home(): return render_template('index.html') @app.route('/greet', methods=['POST']) def greet(): name = request.form.get('name') return f"こんにちは、{name}さん!" if __name__ == '__main__': app.run(debug=True)

アプリケーションを再度実行し、名前を入力してフォームを送信すると、「こんにちは、○○さん!」というメッセージが表示されるはずです。

5. データベースの利用

最後に、データベースを使ってデータを保存・管理する方法を見ていきましょう。ここでは、SQLiteという軽量なデータベースを使用します。

SQLAlchemyのインストール

まず、SQLAlchemyというORM(オブジェクト関係マッピング)ライブラリをインストールします。

bash

コードをコピーする

pip install SQLAlchemy

データベースの設定

app.pyを以下のように変更して、データベースを設定します。

python

コードをコピーする

from flask import Flask, render_template, request from flask_sqlalchemy import SQLAlchemy app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///users.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('/') def home(): return render_template('index.html') @app.route('/greet', methods=['POST']) def greet(): name = request.form.get('name') new_user = User(name=name) db.session.add(new_user) db.session.commit() return f"こんにちは、{name}さん!" if __name__ == '__main__': db.create_all() app.run(debug=True)

これで、フォームから送信された名前がデータベースに保存されるようになります。

まとめ

この記事では、Pythonを使って簡単なウェブアプリケーションを作成する方法をステップバイステップで解説しました。Flaskを使えば、シンプルでありながらパワフルなウェブアプリケーションを短時間で開発することができます。ぜひ、この記事を参考にして、自分だけのウェブアプリケーションを作ってみてください。Happy Coding! 🎉

「たったの数ステップで、あなたも電子書籍の作者に。ChatGPTの簡単マニュアルで始めよう!」


この記事が気に入ったらサポートをしてみませんか?