Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

This article is a Private article. Only a writer and users who know the URL can access it.
Please change open range to public in publish setting if you want to share this article with other users.

More than 3 years have passed since last update.

②Django 環境設定&管理者サイト表示

Last updated at Posted at 2020-03-27

#はじめに
本記事は、Djnagoの管理者サイトを表示するところまで行った際の備忘録として書いたものである。

#前提条件

  • OS環境は、Virtualboxで稼働中のCentOS8.1です。以下、OS詳細情報となります。
# cat /etc/centos-release
CentOS Linux release 8.1.1911 (Core)
  • Virtualboxのネットワーク設定は、「NAT」「ホストオンリーアダプター」で構成。

  • Django環境が構築済みであること。
    ※Django環境の構築は、以下を参照してください。
    ①Django 環境構築

#(1)Djangoの環境設定

▼プロジェクトを生成(今回は、qiitaというプロジェクトを生成)

# django-admin startproject qiita .

※ドットをつけて「startproject」を実施することで、カレントディレクトリ直下にDjangoプロジェクトを生成することができる。(無駄なディレクトリ階層を作らない)

▼プロジェクト生成後の確認

#  tree  --charset=C
↓以下出力結果
.
|-- manage.py
`-- qiita
    |-- __init__.py
    |-- settings.py
    |-- urls.py
    `-- wsgi.py

1 directory, 5 files

▼Djangoプロジェクト全体の設定値を修正

qiita/settings.py

#変更点①(接続許可範囲を設定)
ALLOWED_HOSTS = []

ALLOWED_HOSTS = ['*']


#変更点②(DBをsqliteからPostgreSQLに変更)
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

DATABASES = {      #※1
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'djangodb', 
        'USER': 'django',
        'PASSWORD': 'django',
        'HOST': 'localhost',
        'PORT': '',
    }
}

#変更点③(Djangoの表示言語を変更)
LANGUAGE_CODE = 'en-us'

LANGUAGE_CODE = 'ja'

#変更点④(タイムゾーンを変更)
TIME_ZONE = 'UTC'

TIME_ZONE = 'Asia/Tokyo'

※1:Djangoでは、setting.pyにデータベースの接続情報を定義しとくだけで、DBとの連携が可能になる
以下の接続情報をもとに、アプリとの連携を行っている。

データベース名:djangodb
ユーザ名:django
パスワード:django
ホスト名:localhost
ポート:指定無しなので、PostgreSQLのデフォルトポートの「5432」が使用される。

#(2)管理者サイト表示

▼マイグレーションを実施

# python manage.py migrate

※上記のコマンドで、Djangoに必要なテーブルなどを自動生成してくれる。
※作成されるテーブルは以下を参照

djangodb=# \dt
                     リレーション一覧
 スキーマ |            名前            |    型    | 所有者
----------+----------------------------+----------+--------
 public   | auth_group                 | テーブル | django
 public   | auth_group_permissions     | テーブル | django
 public   | auth_permission            | テーブル | django
 public   | auth_user                  | テーブル | django
 public   | auth_user_groups           | テーブル | django
 public   | auth_user_user_permissions | テーブル | django
 public   | django_admin_log           | テーブル | django
 public   | django_content_type        | テーブル | django
 public   | django_migrations          | テーブル | django
 public   | django_session             | テーブル | django
(10 行)

▼Djangoの管理者サイトにアクセスする用のユーザを作成

# python manage.py createsuperuser
↓以下が、入力が要求される項目
ユーザー名 (leave blank to use 'root'): admin
メールアドレス:
Password:
Password (again):
Superuser created successfully.

※メールアドレスは、必須の入力項目ではないので、入力しなくても可。

▼動作確認

#  python manage.py runserver 192.168.56.201:8000

http://192.168.56.201:8000/admin
※上記URLにアクセスし、ログイン画面でユーザ認証を実行後、無事に管理者サイトが表示できればOK
以下が管理者サイトのキャプチャである。

admin-Site.PNG

管理者サイトに無事にアクセスができたので、DjangoとDBの連携が問題なくおこなえていることになる( *´艸`)
これでおけまる('ω')
次項に続く( ^ω^)・・・
③Django アプリケーション設定

0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?