エミ眠太の自由帳
 エミ眠太の自由帳
    
 
 基本      2022-03-11      

Djangoでよく使用するコマンド

Language:
 Python
Framework/Library:
 Django Django REST Framework
Technology:
Platform/Tool:

記事一覧へ

目次


はじめに

Djangoで必ず使用するファイルと言えば?、、、manage.pyですよね。これが使えないと話にならないと思います。ではこのファイルを使ったコマンドはいくつ言えますか?、、、makemigrations, migrate, runserverもセットで覚えると思いますが、私だけでしょうか、他は使わないからすぐ忘れてしまうんですよ。山手線ゲームやったら確実に4・5人目で切れますね。そこで今回はコマンドおよびコマンドラインユーティリティの種類・使い方についてまとめました。

コマンドラインユーティリティ

コマンドラインユーティリティはDjangoプロジェクトを実行するために必要なものです。以下の通り3種類あります。いずれも同じ役割を果たしますが、一番はじめにプロジェクトを作る際にはdjango-adminを使用します。

  • django-admin
    • プロジェクト作成時に使用します。
  • python3 manage.py
    • 最も高頻度で使用されます。
  • python3 -m django
    • manage.pyに共に使用することができます。

コマンド

ここから上記のコマンドユーティリティを使用した頻出コマンドをまとめます。

  • $ django-admin startproject
    • Djangoプロジェクトを作成するためのコマンド。まさにDjangoの根幹(1)。
  • $ django-admin startapp
    • Djangoアプリケーションを作成するするためのコマンド。まさにDjangoの根幹(2)。
  • $ python3 manage.py collectstatic
    • HTMLファイル、CSSファイル、画像ファイル等のstaticファイル(静的ファイル / assets)をまとめるためのコマンド。開発環境ではDjangoが自動で管理する一方、本番環境ではこのコマンドでstaticファイルを一つのディレクトリに集めておく。settings.pyでは、STATIC_ROOT, STATIC_URL, STATICFILES_DIRS, STATICFILES_STORAGE等を別途設定する。
  • $ python3 manage.py changepassword [username]
    • 任意の[username]のパスワードを変更可能。
  • $ python3 manage.py createsuperuser
    • Djangoの管理サイトにログインし使用するための管理者ユーザーを作成するためのコマンド。ユーザー名、メールアドレス、パスワードを指定する。
  • $ python3 manage.py dumpdata
    • データベースの内容をバックアップ等の目的でエクスポートするためのコマンド。JSON形式、XML形式等のフォーマットを指定しアプリケーション単位、テーブル単位でエクスポート可能。
  • $ python3 manage.py help ([command name])
    • 困ったときはこれ。helpと入れるだけで利用可能なコマンドを出力可能。さらに、[command name]を入力すると、そのコマンドのオプション含めた使い方を教えてくれる。
  • $ python3 manage.py loaddata
    • dumpしたファイルをデータベースにインポートするためのコマンド。例えばJSON形式のファイルをインポートする際には、loaddata以降にsample.jsonという形式で指定可能。
  • $ python3 manage.py makemigrations
    • models.pyで定義した内容をデータベースに反映させるための、マイグレーションファイルを作成するためのコマンド。
  • $ python3 manage.py migrate
    • データベースに対して、makemigrationsで作成したマイグレーションファイルを適用するためのコマンド。
  • $ python3 manage.py runserver
    • 開発環境用のローカルサーバーを起動するためのコマンド。
  • $ python3 manage.py showmigrations
    • 作成したマイグレーションファイル一覧を表示するためのコマンド。
  • $ python3 manage.py test
    • 自動でテストを実行するためのコマンド。テスト内容はstartapp実行時に自動で作成されるtest.py内に記述する。
  • $ python3 manage.py testserver
    • テスト用サーバーを起動するためのコマンド。

helpを使ってできること

このようにコマンドはたーくさんあるんですが、他にもまだまだたくさんあります。実際にhelpを使ってみると、現在インストールされているライブラリに応じて、カテゴリごとに利用可能なコマンドが確認できるので見てみましょう。

現在"django-cloudinary-storage"というパッケージが入っているので、[cloudinary_storage]で利用可能なコマンドが表示されていることが分かりますね。 では次に、helpの後にコマンドを追加してみます。上でも記載しましたが、help [command name]とすることで、各コマンドで利用可能なオプションを簡単に説明してくれます。ここではcreatesuperuserを入力してみます。

すると8行目以降に利用可能なオプションが表示されます。

まとめ・参考

とりあえず"help"を使おうということだけ言っておきます。


記事をシェアする


関連する記事

よろしければこちらの記事も参考にしてみてください。

Loading...




記事一覧へ