PYTHONではじめてのWEBサイトを作成 3
Djangoで開発する
なぜDjangoか
Python FLASKも考えたけど、色々なブログやYOUTUBEを見たりするとDjangoが汎用的で良いらしい。これからの僕の仕事に活かせることが多いかもと思った。
Djangoの基本
Djangoプロジェクトはアプリケーション(app)に分割され、それぞれが独立して機能します。以下を押さえておけば進められると思います。
models.py:モデルはデータベースの構造を定義します。各モデルはデータベーステーブルに対応します。
admin.py:Djangoにはデフォルトで管理画面があり、モデルで定義したデータを追加、削除、編集ができます。これはわかりやすいです。
views.py:リクエストを処理し、レスポンスを返します。テンプレートと連携してHTMLを生成します。
urls.py:URLパターン(テンプレート)と対応するビューをマッピングします。各アプリケーションは自身のurls.pyを持ち、プロジェクト全体のurls.pyでまとめられます。
settings.py:プロジェクト全体の設定を管理します。データベースの設定、静的ファイルのパス、インストールされたアプリケーションなどが含まれます。
詳細はDjango入門などで良質な無料の情報がたくさんあります。
僕は上記を見ながら一通りまねしてみました。
基本いじりながら覚えていきますが、最初にDjangoの概念、全体像を把握した方が良いようです。
ざっくりというとmodels.pyでデータを定義してviews.pyで処理してからurls.pyでtemplatew表示するというような流れです。
DjangoをVScodeにインストール
1. VSCodeを開く
VSCodeを開き、プロジェクトを作成したいディレクトリに移動
2. ターミナルを開く
VSCode内でターミナルを開きます。メニューから「ターミナル」 > 「新しいターミナル」を選択
3. 仮想環境の作成
プロジェクトごとに異なるPythonパッケージや依存があるので仮想環境を作成
python3 -m venv myenv
source myenv/bin/activate
4. Djangoのインストール
pip install django
5. Djangoプロジェクトの作成
django-admin startproject myproject
今回は以下にしました。
django-admin startproject banhmilove
6. アプリケーションの作成
djangoの中にはプロジェクトがあり、その配下ディレクトリにappがある。appは複数あるイメージ
cd myproject
python manage.py startapp myapp
今回は以下にしました。
cd banhmilove
python manage.py startapp banhmilove_app
7. アプリケーションの設定
プロジェクトを作るとデフォルトでmodels.pyやviews.py、urls.pyなどファイルが自動でできています。settinngs.pyを開いてINSTALL _APPSを探してそこに以下を追加します。
# myproject/settings.py
INSTALLED_APPS = [
...
'banhmilove_app',
]
8. データベースのマイグレーション
python manage.py migrate
9. 開発サーバーの起動
manage.pyもデフォルトで用意されています。このファイルで、サーバーの起動、データベース操作、アプリケーションの作成をコントロールします。
python manage.py runserver
ブラウザを開き、http://127.0.0.1:8000/ にアクセスします。Djangoのウェルカムページが表示されれば成功です。
まとめ
一番手っ取り早くプログラミングを習得することはアウトプットすることと多くの人が言っています。
ここまでやると早くサイトを作りたくなる衝動に駆られると思います。
そうすることで没頭して進められると思います。
次何をするかの決まりはないですが早くアウトプットを見たいので
取り急ぎテンプレートを設置しようと思います。
ここの会社の代表をしています。
この記事が気に入ったらサポートをしてみませんか?