Підключитися до бази даних
Змінити налаштування
Щоб Django міг підключитися до вашої бази даних, ви повинні вказати це в кортежі DATABASES
у файлі settings.py
.
Раніше це виглядало так:
SQLite
my_tennis_club/my_tennis_club/settings.py
:
.
.
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': BASE_DIR / 'db.sqlite3',
}
}
.
Тепер ви повинні змінити його, щоб він виглядав так:
PostgreSQL
my_tennis_club/my_tennis_club/settings.py
:
.
.
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'postgres',
'USER': 'masteruser',
'PASSWORD': '12345678',
'HOST': 'w3-django-project.cdxmgq9zqqlr.us-east-1.rds.amazonaws.com',
'PORT': '5432'
}
}
.
Примітка: Для вашого проєкту значення будуть іншими.
Двигун?
Як ви бачите у файлі settings.py
, ми вставляємо postgresql
замість sqlite
.
Назва?
База даних не має назви, але ви повинні призначити її, щоб отримати доступ до бази даних.
Якщо назва не вказана, постачальник приймає 'postgres'
як назву бази даних.
Ім’я користувача та пароль?
Вставте ім’я користувача та пароль, які ви вказали під час створення бази даних.
Хост? Порт?
Як ви бачите у файлі settings.py
, ми вставляємо postgresql
замість sqlite
та вставляємо ім’я користувача та пароль, які ми вказали під час створення бази даних.
HOST
і PORT
можна знайти в розділі "Підключення та безпека" екземпляра RDS. Вони описані як "Endpoint" ("Кінцева точка") та "Port" ("Порт"):
Це для мого проєкту:
'HOST': 'w3-django-project.cdxmgq9zqqlr.us-east-1.rds.amazonaws.com'
'PORT': '5432'
Перенести
Після внесення змін у settings.py
ми повинні запустити міграцію у нашому віртуальному середовищі, перш ніж зміни відбудуться:
py manage.py migrate
Що дасть вам такий результат:
Operations to perform:
Apply all migrations: admin, auth, contenttypes, members, 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 auth.0010_alter_group_name_max_length... OK
Applying auth.0011_update_proxy_permissions... OK
Applying auth.0012_alter_user_first_name_max_length... OK
Applying members.0001_initial... OK
Applying members.0002_members_delete_member... OK
Applying members.0003_rename_members_member... OK
Applying sessions.0001_initial... OK
Тепер, якщо ви запустите проєкт:
py manage.py runserver
І перегляньте його у своєму браузері: 127.0.0.1:8000/
.
Ви отримаєте домашню сторінку проєкту, але якщо натиснути на посилання "members" ("учасники"), ви побачите, що учасників немає.
Це тому, що база даних порожня. У наступному розділі Додавання учасників ми заповнимо базу даних учасниками.