Это потому, что get_or_create
возвращает кортеж, и обычно вас интересует только полученный или созданный object
(первый элемент), а не логическое значение, указывающее, был ли объект только что создан (второй элемент).
Из документации по get_or_create
:
Возвращает кортеж (object, created)
, где object
- это полученный или созданный объект, а created
- это логическое значение, указывающее, был ли создан новый объект.
Хотя вы также можете использовать синтаксис:
def add_dept():
d, _ = Department.objects.get_or_create(dept_name=random.choice(depatment))