Идентификация существующих пользователей

We use cookies. Read the Privacy and Cookie Policy

При проведении миграции Django модифицирует базу данных, чтобы в ней хранилась связь между каждой темой и пользователем. Для выполнения миграции Django необходимо знать, с каким пользователем должна быть связана каждая существующая тема. Проще всего связать все существующие темы с одним пользователем, например суперпользователем. Но для этого сначала необходимо узнать идентификатор этого пользователя.

Просмотрим идентификаторы всех пользователей, созданных до настоящего момента. Запустите сеанс оболочки Django и введите следующие команды:

(venv)learning_log$ python manage.py shell

(1) >>> from django.contrib.auth.models import User

(2)>>> User.objects.all()

[<User: ll_admin>, <User: eric>, <User: willie>]

(3)>>> for user in User.objects.all():

... . . print(user.username, user.id)

...

ll_admin 1

eric 2

willie 3

>>>

В точке (1) в сеанс оболочки импортируется модель User. После этого просматриваются все пользователи, созданные до настоящего момента (2). В выходных данных перечислены три пользователя: ll_admin, eric и willie.

В точке (3) перебирается список пользователей, и для каждого пользователя выводится его имя и идентификатор. Когда Django спросит, с каким пользователем связать существующие темы, мы используем один из этих идентификаторов.