Djangoは、開発者が安全でスケーラブルで保守可能なWebアプリケーションを構築できるように設計された無料のオープンソースの高レベルPythonWebフレームワークです。
ニーズに応じて、Djangoをインストールするさまざまな方法があります。システム全体にインストールすることも、pipを使用してPython仮想環境にインストールすることもできます。
Djangoパッケージは公式のUbuntuリポジトリにも含まれており、apt
を使用してインストールできます。 パッケージマネージャー。これは、Ubuntu 18.04にDjangoをインストールする最も簡単な方法ですが、仮想環境にインストールするほど柔軟ではありません。また、リポジトリに含まれているバージョンは、常に最新バージョンのDjangoよりも遅れています。
Python仮想環境の主な目的は、さまざまなPythonプロジェクト用に分離された環境を作成することです。このようにして、1台のコンピューターに複数の異なるDjango環境を配置し、他のDjangoインストールに影響を与えることを心配せずに、プロジェクトごとに特定のバージョンのモジュールをインストールできます。 Djangoをグローバル環境にインストールする場合、コンピューターにインストールできるDjangoバージョンは1つだけです。
Ubuntu 18.04へのDjangoのインストール#
次のセクションでは、Ubuntu18.04のPython仮想環境にDjangoをインストールする方法について段階的に説明します。
Python 3とvenvのインストール#
Ubuntu18.04にはデフォルトでPython3.6が付属しています。次のように入力して、Python3がシステムにインストールされていることを確認できます。
python3 -V
出力は次のようになります。
Python 3.6.6
Python 3.6以降、仮想環境を作成するための推奨される方法は、venv
を使用することです。 モジュール。 python3-venv
をインストールするには venv
を提供するパッケージ モジュールは次のコマンドを実行します:
sudo apt install python3-venv
モジュールがインストールされると、Djangoアプリケーション用の仮想環境を作成する準備が整います。
仮想環境の作成#
Python3仮想環境を保存するディレクトリに移動することから始めます。これは、ホームディレクトリ、またはユーザーが読み取りと書き込みのアクセス許可を持っているその他のディレクトリにすることができます。
Djangoアプリケーション用の新しいディレクトリを作成し、そこに移動します:
mkdir my_django_app
cd my_django_app
ディレクトリ内に移動したら、次のコマンドを実行して新しい仮想環境を作成します。
python3 -m venv venv
上記のコマンドは、venv
というディレクトリを作成します 、Pythonバイナリのコピー、Pipパッケージマネージャー、標準のPythonライブラリ、およびその他のサポートファイルが含まれています。仮想環境には任意の名前を使用できます。
この仮想環境の使用を開始するには、activate
を実行して仮想環境をアクティブ化する必要があります スクリプト:
source venv/bin/activate
有効化されると、仮想環境のbinディレクトリが$PATH
の先頭に追加されます。 変数。また、シェルのプロンプトが変更され、現在使用している仮想環境の名前が表示されます。私たちの場合、それはvenv
。
Djangoのインストール#
仮想環境がアクティブ化されたので、Pythonパッケージマネージャーpipを使用してDjangoをインストールできます:
pip install django
仮想環境内では、コマンドpip
を使用できます pip3
の代わりに およびpython
python3
の代わりに 。 インストールを確認するには、次のコマンドを使用してDjangoバージョンを出力します。
python -m django --version
この記事を書いている時点で、最新の公式Djangoバージョンは2.1.2です
2.1.2
Djangoのバージョンは、ここに表示されているバージョンとは異なる場合があります。
Djangoプロジェクトの作成#
mydjangoapp
という名前の新しいDjangoプロジェクトを作成するには django-admin
を使用します コマンドラインユーティリティ:
django-admin startproject mydjangoapp
上記のコマンドは、mydjangoapp
を作成します 現在のディレクトリ内のディレクトリ。
tree mydjangoapp/
mydjangoapp/
|-- manage.py
`-- mydjangoapp
|-- __init__.py
|-- settings.py
|-- urls.py
`-- wsgi.py
そのディレクトリ内に、manage.py
という名前のプロジェクトを管理するためのメインスクリプトがあります。 データベース構成、Djangoおよびアプリケーション固有の設定を含む別のディレクトリ。
データベースを移行して、管理ユーザーを作成しましょう。
mydjangoapp
に移動することから始めます ディレクトリ:
cd mydjangoapp
デフォルトでは、DjangoはSQLiteデータベースを使用します。本番アプリケーションの場合、PostgreSQL、MariaDB、Oracle、またはMySQLDatabaseを使用できます。
次のコマンドを実行して、データベースを移行します。
python manage.py migrate
出力は次のようになります。
Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying admin.0003_logentry_add_action_flag_choices... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying auth.0008_alter_user_username_max_length... OK
Applying auth.0009_alter_user_last_name_max_length... OK
Applying sessions.0001_initial... OK
データベースが移行されたら、管理ユーザーを作成して、Django管理インターフェースを使用できるようにします。
python manage.py createsuperuser
このコマンドにより、管理ユーザーのユーザー名、電子メールアドレス、およびパスワードの入力を求められます。
Username (leave blank to use 'linuxize'): admin
Email address: [email protected]
Password:
Password (again):
Superuser created successfully.
開発サーバーのテスト#
manage.py
を使用して開発Webサーバーを起動します スクリプトの後にrunserver
が続きます オプション:
python manage.py runserver
次の出力が表示されます:
Performing system checks...
System check identified no issues (0 silenced).
October 20, 2018 - 11:16:28
Django version 2.1.2, using settings 'mydjangoapp.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
仮想マシンにDjangoをインストールし、Django開発サーバーにアクセスする場合は、settings.py
を編集する必要があります。 ファイルを作成し、ALLOWED_HOSTS
内にサーバーのIPアドレスを追加します リスト。
http://127.0.0.1:8000
を開きます Webブラウザーで、デフォルトのDjangoランディングページが表示されます:
/admin/
を追加すると、Django管理インターフェースにアクセスできます URLの最後まで(http://127.0.0.1:8000/admin/
)。これにより、管理者ログイン画面が表示されます:
ユーザー名とパスワードを入力すると、Django管理ページにリダイレクトされます:
開発サーバーを停止するには、CTRL-C
と入力します ターミナルで。
仮想環境の非アクティブ化#
作業が完了したら、deactivate
と入力して、環境を非アクティブ化します。 通常のシェルに戻ります。
deactivate