Djangoは、Python上で構築された、人気のある無料のオープンソースWebアプリケーションフレームワークです。Webアプリ開発の効率化を目指しています。Djangoには、Webサイトをより迅速かつ簡単に開発するための強固なコンポーネント群が付属しています。
私たちのDjangoに関する一連の記事では、デモアプリを使ってDjangoを使用する方法を探索してきました。このガイドでは、Djangoモデルの作成:チュートリアルガイドで学んだことをベースに、Djangoモデルを管理インターフェースに接続します。
始めましょう!
前提条件
このガイドでは、Djangoアプリの設定と構築についてさらに深く掘り下げます。以下の前提条件が必要です。
- 適切に設定された ローカルのPythonプログラミング環境.
- データベース(推奨:MySQL)に接続するように設定されたDjangoアプリ。こちらの PostgreSQL、Nginx、Gunicornを使用したDjangoの設定.
- ガイドを参照してください。アプリには、このガイドで示されているDjango環境 が含まれます。すべての手順はUbuntu 20.04サーバー上で実行されます。詳細については、Ubuntuサーバーのセットアップ.
を参照してください。これまでのシリーズに従ってきた場合、サンプルDjangoアプリを作成し、MySQLとの接続を確立し、データベースモデルを作成しました(対象: Posts および コメント)。これらのモデルは、基本的なブログサイトのシンプルな機能を備えています。このガイドはここから続行します。なお、Djangoの公式ドキュメントでは、自動生成されたDjango管理インターフェースを中心にWebアプリを構築することは推奨されていません。
ステップ1. 管理機能の有効化
前の前提条件チュートリアルで示されているように、Djangoアプリは常に専用の仮想Python環境で構築することをお勧めします。アプリで作業を行う場合は、常に仮想環境をアクティブにする必要があります。
まず、Python仮想環境のアクティベーションスクリプトを実行します。
|
1 |
cd sample_app/ |
|
1 |
. sample_app_env/bin/activate |
![]()
まず、Djangoアプリの設定を微調整する必要があります。設定ファイル settings.py をテキストエディタで開きます:
|
1 |
nano settings.py |
以下のセクションまでスクロールダウンします: INSTALLED_APPS 。ここには、Djangoプロジェクトに接続されているすべてのアプリがリストされています。デフォルトのアプリに加えて、Djangoモデルアプリである random_app および django.contrib.admin:

次に、URL設定ファイル urls.py をテキストエディタで開きます:
|
1 |
nano urls.py |
ファイルには次のコードが含まれている必要があります。
|
1 2 3 4 5 6 |
from django.contrib import admin from django.urls import path urlpatterns = [ path('admin/', admin.site.urls), ] |

ファイルを保存してエディタを閉じます。これらの微調整により、Djangoアプリが管理モデルと管理ユーザーインターフェースにアクセスできるようになります。
ステップ2. 管理機能のインストールの確認
設定を微調整した後、データベースが Admin モデルで更新されるように、モデルをマイグレーションすることをお勧めします。
Djangoアプリでデータベースマイグレーションを実行します。
|
1 |
python manage.py migrate |

これでDjangoサーバーを起動する準備が整いました。ローカルプロジェクトであるため、サーバーをローカルで起動します。サーバーはポート 8000 で動作する必要があります。ファイアウォールが設定されている場合は、ポート 8000 のトラフィック交換を許可する必要があります。こちらの UFWに関する詳細ガイドでは、特定のポートへのトラフィックを許可する方法を紹介しています。
サーバーを起動します。
|
1 |
python manage.py runserver localhost:8000 |

その後、WebブラウザでサーバーのURLにアクセスします。
|
1 |
http://localhost:8000 |

管理アクセス画面にアクセスするには、次のURLに移動します。
|
1 |
http:/localhost:8000/admin |

Djangoアプリ用の管理アカウントを用意する必要があります。この管理アカウントは、アプリ内で最も高い権限を持ちます。
ステップ3. スーパーユーザーアカウントの作成
これまでに、Djangoアプリが Admins モデルを正常に使用しており、管理ページにアクセスできることを確認しました。Djangoサーバーを停止するには、Ctrl + C.
を押します。停止したら、Djangoアプリに変更を加えることができます。次のコマンドを実行して、スーパーユーザー/管理アカウントを作成します。
|
1 |
python manage.py createsuperuser |

検証用のユーザー名、メールアドレス、パスワードの入力を求められます。これでDjango管理パネルにアクセスできるようになります。Djangoサーバーを起動し、管理ページに移動します:
|
1 |
python manage.py runserver localhost:8000 |
スーパーユーザーのユーザー名とパスワードを使用してログインします:

ほら!管理パネルに無事アクセスできました。あとは、 Post と Comment の部分を管理パネルに接続するだけです。
ステップ 4. URLパターンの作成
管理インターフェースに Postと Commentを表示するには、Djangoに関連するURLを生成させる必要があります。このセクションでは、これら専用のURLを設定する方法を見ていきます。
ファイル urls.py を random_app ディレクトリの下に作成します:
|
1 |
touch urls.py |
![]()
テキストエディタでファイルを開きます:
|
1 |
nano urls.py |
次に、ファイルに以下のコードを追加します:
|
1 2 3 4 5 6 7 |
from django.urls import path from . import views urlpatterns = [ path('$/', views.posts, name='posts'), path('$/', views.comments, name='comments'), ] |

このコードは、アプリが Posts と コメント.
ステップ 5. アプリを管理画面に接続する
目標は、 Posts と コメント を管理パネルに正常に接続することです。プロセスが成功すると、管理ダッシュボードにそれらのリンクが表示されます。
接続するには、モデルの場所に移動し、 admin.py をテキストエディタで開きます:
|
1 |
nano admin.py |

ファイルに以下のコードを入力します:
|
1 2 3 4 5 6 |
from django.contrib import admin from random_app.models import Post from random_app.models import Comment admin.site.register(Post) admin.site.register(Comment) |

ファイルを保存してエディタを閉じます。これで、管理パネルがモデルを認識し、リンクを表示するようになります。
ステップ 6. 変更の確認
Djangoアプリの設定が完了し、 Posts と コメント を管理パネルから直接管理できるようになりました。localhostでサーバーを起動し、管理パネルにログインして変更を確認してください:

テストが完了したら、Djangoサーバーを安全に停止し、仮想環境を終了できます。コンソールウィンドウから、Ctrl + C を押してDjangoサーバーを停止します。仮想環境を終了するには、次のコマンドを実行します:
|
1 |
deactivate |
![]()
通常のターミナルセッションに戻るはずです。
最後に
このガイドでは、管理インターフェースを有効にし、管理アカウントを作成し、カスタムモデル( Posts および コメント)を管理画面に登録する方法を紹介しました。これで、Django管理インターフェースにより、ブログの投稿とコメントの管理が向上します。
以下は、Djangoをコンテナで使用する際に役立つ、当社のDjangoシリーズのその他のリソースです:
- Ubuntu上でDockerを使用してDjangoとGunicornアプリケーションを構築する
- Docker、Nginx、Let's Encryptを使用してDjangoアプリケーションを保護およびスケールする方法
ハッピーコンピューティング!
コメント
コメントはまだありません。最初のコメントを投稿しましょう。