2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Djangoを始める

Posted at

記事を書くきっかけ

 Djangoを用いてWebアプリのサーバー側の設定をしようと思い、そのためのコマンドや初期設定を備忘録としてまとめました。

目次

  • Djangoとは
  • Djangoを用いたWebアプリ作成手順
    1. Djangoプロジェクト作成
    2. アプリケーション作成
    3. 初期設定
    4. アプリケーション実行
    5. モデルをデータベースに適用する
    6. 管理画面のログイン情報設定
  • まとめ

Djangoとは

 DjangoはPythonで実装されたWebアプリケーションフレームワークの1つであり、Webアプリケーションの実装に必要な機能が一通り揃っているフルスタックなフレームワークです。

Djangoを用いたWebアプリ作成手順

1. Djangoプロジェクト作成

 Djangoのプロジェクトを作成するにはまず、以下のコマンドでDjangoのプロジェクトを作成します。
 sampleはプロジェクト名です。

Djangoプロジェクト作成
$ django-admin startproject sample

 コマンド実行後のディレクトリ構成は以下のようになります。

ディレクトリ構成
.
├── manage.py
└── sample
    ├── __init__.py
    ├── wsgi.py
    ├── urls.py
    └── setting.py
ファイル名 役割
manage.py 開発用サーバーの起動,データベースへデータ反映,Djangoの操作管理
__init__.py パッケージ読み込んだ際の初期化用ファイル
wsgi.py Djangoを本物のWebサーバー上で動作させるファイル
urls.py ブラウザからアクセスしたURLに対応した処理を定義するためのファイル
setting.py Djangoプロジェクト全体の設定を定義するファイル

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

 Djangoプロジェクトを作成したらプロジェクト内へ移動し、以下のコマンドを実行してWebアプリのフォルダを作成します。

アプリケーション作成
$ python3.10 manage.py startapp sample_app

 コマンド実行後のディレクトリ構成は以下のようになります。

ディレクトリ構成
.
├── manage.py
├── sample
└── sample_app
    ├── admin.py
    ├── apps.py
    ├── models.py
    ├── test.py
    └── setting.py
ファイル名 役割
admin.py 管理画面の設定を行うファイル
apps.py アプリ自体の設定を行うファイル
models.py データベースの操作をするファイル
test.py Djangoアプリのテストを書くためのファイル
views.py 実際の処理を書くファイル

3. 初期設定

 Webアプリフォルダが作成できたらsample/settings.pyのINSTALLED_APPSを書き換え、WebアプリがDjangoとリンクするようにします。ついでに使用する言語と時間を日本仕様にしています。

sample/settings.py
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'sample_app.apps.SampleAppConfig'    # 追加
]

# 使用する言語を日本語にする
LANGUAGE_CODE = 'ja'

# 時間をTokyoにする
TIME_ZONE = 'Asia/Tokyo'

 sample/settings.pyを変更したら、次はsample/urls.pyを変更することでURLとWebアプリをリンクさせます。

sample/urls.py
from django.contrib import admin
from django.urls import path,include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('/', include('sample_app.urls')),
]

 この設定が終わったら、views.pyやmodels.pyを書いてアプリを作成します。

4. アプリケーション実行

 アプリの挙動をブラウザで確認したい時は、以下のコマンドを実行します。

アプリケーション実行
$ python3.10 manage.py runserver

5. モデルをデータベースに適用する

 データベースを使用する際は、models.pyで作成したモデルをデータベースに適用する必要があり、以下のコマンド2つでそれを行います。
 1つ目のコマンドでmakemigrationファイルが作成され、2つ目のコマンドでデータベースに反映させています。

モデルでデータベース更新
$ python3.10 manage.py makemigrations sample_app
$ python3.10 manage.py migrate

6. 管理画面のログイン情報設定

 Djangoフレームワークにはあらかじめ管理画面が備わっており、その管理画面にログインするためのユーザーネームとパスワードを以下のコマンドで設定します。

管理画面のログイン情報設定
$ python3.10 manage.py createsuperuser

まとめ

 ファイルが多くやや複雑ですが、ルーティングやデータベースの管理が一括でできる点は便利でした。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?