Laravel eloquent. Большое потребление памяти, долгая загрузка и огромное количество моделей. Как оптимизировать?

Было так, затем я оптимизировал
632b7843073e8964786630.png
И стало так
632b7860c1cb0751481808.png
Но результатом не доволен. Количество моделей большое и будет рости.
Сам запрос
$jobs = \App\Company::with(['jobs.questionLanguages.question', 'jobs.questionLanguages.questionAnswer'])->where('id', $curCompanyId)->get();

Собственно и думаю как быть. Память жрёт как слон. Моделей миллион. Это можно как-то оптимизировать? Пока имеется один вариант - переписывать на чистом SQL.
  • Вопрос задан
  • 330 просмотров
Пригласить эксперта
Ответы на вопрос 1
gzhegow
@gzhegow
aka "ОбнимиБизнесмена"
Там же фильтровать можно:

$query = Model::query()
  ->with([
    'relation' => function ($query) { $query->where('field', 'value'); },
  ]);


И потом, на кой вам сдалось выдергивать из базы ВСЕ ОПРОСЫ, на странице поди больше десятка не поместится. А варианты ответов тоже не сразу нужны, вероятно, что можно для одного "открытого" запрашивать, это если за оптимизацию говорить.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы