Задать вопрос
Astrohas
@Astrohas
Python/Django Developer

Как правильно генерировать объекты ORM?

Хотел в учебных целях сгенерировать объекты. Дейтвие понятное
for i in range(1000):
    r = Post()
    ....
    r.save()

Увы, работает это супер медленно, около 100 объектов в секунду. Debug=True и SQLite. Delete тоже аналогичная скорость.
  • Вопрос задан
  • 265 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Python-разработчик
    10 месяцев
    Далее
  • Skillbox
    Python-фреймворк Django
    3 месяца
    Далее
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
Решения вопроса 2
@deliro
Если цель - создавать объекты, то нет ничего быстрее bulk_create. Немного измени твой код, вот так:
posts = []
for i in range(1000):
    r = Post()
    ....
    posts.append(r)

Post.objects.bulk_create(posts)
Ответ написан
Комментировать
sergey-gornostaev
@sergey-gornostaev Куратор тега Django
Седой и строгий
Заверните цикл в транзакцию.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы