こんにちは、スタイル・エッジLABOのMです。
弊社ではPHPでの開発だけではなく、Pythonを使った開発も行っております。
今回フレームワークとしてDjango 3.0を採用しましたので
開発環境で画面の確認ができるまでをおさらいしようと思います。
1. Djangoのインストール
今回はpipからインストールしました。
インストール時にバージョン指定をすることができます。
$ pip install Django==3.0 # Django 3.0をインストール
2. プロジェクトの作成
以降もコマンドを実行して準備を進めていきます。 まずは共通の設定を管理するプロジェクトの作成です。
$ python manage.py startproject styleedge-labo # styleedge-laboプロジェクトの作成
3. アプリケーションの作成
先ほど作ったstyleedge-laboプロジェクトと同じ階層に
"sampleapp"アプリケーション用のディレクトリを作成します。
※Djangoでは一つのプロジェクトに複数のアプリケーションを紐付けることができます。
$ python manage.py startapp sampleapp # sampleappアプリケーションの作成
ここまで実行すると、ディレクトリ構成は以下のようになります。
細かいファイルの説明もしたいところですが、今回は先に進めて
いきます。
├── styleedge-labo # プロジェクト全体に共通する設定・機能 │ ├── __init__.py │ ├── asgi.py │ ├── settings.py │ ├── urls.py │ └── wsgi.py ├── db.sqlite3 ├── manage.py └── sampleapp # 各アプリケーションごとの設定・機能 ├── __init__.py ├── admin.py ├── apps.py ├── migrations │ └── __init__.py ├── models.py ├── tests.py ├── urls.py └── views.py
4. 画面が出るまで
settings.pyの編集(DBの設定)
インストール直後はsqllite3で接続できるように設定されていますが、
今回はPostgreSQLで接続するようにstyleedge-labo/settings.pyの
内容を編集します
# settings.py DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'XXXXX', 'USER': 'XXXXX', 'PASSWORD': 'XXXXX', 'HOST': '127.0.0.1', 'PORT': 5432, } }
ビルトインサーバの実行
以下のコマンドを実行すると、localhost:8000でDjangoの初期ページが表示されるようになります
(あくまで開発用なので、公開する際にはこのコマンドは使わないでください)
$ python manage.py runserver
これで無事にDjangoが動いていることを確認できました。
5. (おまけ)manage.pyでできること
ここまで、manage.pyを起点にして画面が表示されるまでを追っていきましたが
他にもいろいろなことができます。
ここからは実際に開発で使っているコマンドなどを挙げていきます。
マイグレーションファイル作成&マイグレーション実行
$ python manage.py makemigrations # マイグレーションファイルを作成します(実行はまだ) $ python manage.py migrate # 作成されたファイルをもとにマイグレーションを実行します
静的ファイルのデプロイ
Djangoでは各アプリケーション内の静的ファイルを一箇所にまとめてデプロイするようにしています。
以下のコマンドを実行して、settings.pyで指定したパスに対して静的ファイルをコピーします。
$ python manage.py collectstatic
なお、--noinput
オプションをつけると確認メッセージを表示せずに実行します。
DBへの接続
$ python manage.py dbshell # settings.pyで指定したDBに接続します
dump取得&流し込み
$ python manage.py sampleapp dumpdata > dump.json # デフォルトではjson形式で出力されます $ python manage.py loaddata dump.json
まとめ
ここまでDjango3で画面が表示されるまでをざっとなぞっていきました。
実際にはこのあとガシガシとアプリケーションの機能を書いていくことになります。
コマンドベースで画面表示までたどり着けるので
Laravelに触れたことがある方はartisanコマンドを想像したかもしれませんね。
まだまだ使いこなせていない機能もあると思うので
今後も精進してまいります。
最後に
スタイル・エッジLABOでは、一緒に働く仲間を募集しています。
もし興味を持っていただけましたら、ぜひ採用サイトものぞいてみてください!
recruit.styleedge-labo.co.jp