Python/Djangoの始め方-環境構築とプロジェクト・アプリケーションの作成

DjangoはPythonベースのWebアプリケーションフレームワークです。RubyでいうところRuby on Railsに相当するツールですね。

近年の機械学習ブームで、日本においてもPythonの地名度が一気にあがったことを受け、Python周りのツールについての情報が求められるようになってきました。

私も今の現場でDjangoを使わせてもらうことになったので、勉強も兼ねて少しずつまとめていこうと思います。

Djangoの開発環境構築について

様々な方法があると思いますが、コンソールでの操作に心得があるなら、Dockerを利用した環境構築をお勧めいたします。Dockerを使った環境構築については次の記事をご覧ください。

https://hodalog.com/run-django-app-using-docker-compose/

プロジェクトの作成

Djangoを始めるためには、まずプロジェクトを作成する必要があります。

適当なディレクトリ配下で、次のコマンドを実行します。

django-admin startproject hello

↓自動でこんな感じのファイル群が生成されます。

.
└── hello
    ├── manage.py
    └── hello
        ├── __init__.py
        ├── __pycache__
        ├── settings.py
        ├── urls.py
        └── wsgi.py

環境変数の設定

環境によっては settings.py を修正する必要があります。

例えばPostgreSQLを使用している場合、 DATABASES 変数を次のように修正します。

DATABASES = {
    'default': {
    'ENGINE': 'django.db.backends.postgresql',
    'NAME': 'postgres',
    'USER': 'postgres',
    'HOST': 'db',
    'PORT': 5432,
  }
}

詳細はこちらの記事をご覧ください。 https://hodalog.com/run-django-app-using-docker-compose/

プロジェクトの起動

Djangoはデフォルトでテスト用のアプリケーションサーバーを備えています。

テスト用のサーバーは、 manage.py があるディレクトリへ移動し、次のようなコマンドで起動します。

python manage.py runserver 0:8000

問題なく起動できたら、ブラウザからURLを叩いてプロジェクトのページにアクセスできます。

アプリケーションの作成

Djangoで何かを作ろうと思ったら、プロジェクトのなかにアプリケーションを用意しなければいけません。

先のコマンドで生成されたプロジェクトのディレクトリへ移動し、次のコマンドを実行します。

python manage.py startapp hello_app

次のようなファイル群が生成されます。

hello_app
├── __init__.py
├── admin.py
├── apps.py
├── migrations
│   └── __init__.py
├── models.py
├── tests.py
└── views.py

まとめ

いよいよ初めの一歩を踏み出しました。やったね!環境構築とプロジェクト、アプリケーション作成に関して簡潔にまとめました。とりあえず今回はここまでにしておきます。