Пробую заполнить БД записями через метод bulk_create():
def test_bulk_create(db_engine_name): objs_list = [] for i in range(10000): obj = Author(name='author_'+str(i), mail='author_'+str(i)+'@djangomail.de') objs_list.append(obj) Author.objects.using(db_engine_name).bulk_create(objs_list) objs_list.clear() authors = Author.objects.all() for i in range(10000): obj = Book(author=authors[i], title='book_'+str(i), page_count=300, exists=True, chars_count=300000, cost=347.77, sale_cost=244.07) objs_list.append(obj) Book.objects.using(db_engine_name).bulk_create(objs_list) test_bulk_create('postgres')
Записи модели Author создаются нормально, исключение выскакивает при вызове bulk_create:
django.db.utils.IntegrityError: ������������: INSERT ������ UPDATE �� �������������� "app_main_book" ���������������� ���������������������� ���������������� ���������� "author_id_refs_id_a6160087" DETAIL: �������� (author_id)=(106570) ���������������������� �� �������������� "app_main_author".
Заметил, что в БД записи создаются не с нулевого id(если перед созданием чистить таблички). Как это перенастроить\почистить не знаю пока, в БД не проф… Наверно это с этим связано, хотя на БД - Mysql функция отрабатывает нормально.
Если надо код моделей посмотреть, выложу…