Laravel Извлечение базы данных Nova Model Large - Желание вытащить очень большой сбой базы данных - PullRequest
0 голосов
/ 16 января 2020

Текущий код в моей модели

        return $this->belongsToMany(Names::class, 'table_id', 'First_name', 'Last_name');

Ошибка

PHP Неустранимая ошибка: допустимый объем памяти 184218728 байт исчерпан ( попытался выделить 9192 байта)

Вопрос

Могу ли я запрашивать базу данных постепенно? Как получить менее требовательный запрос от БД, но при этом загрузить все запрошенные из таблицы?

Использовать

Это должно использоваться в Laravel Nova выпадающее меню карты и поиск. Чтобы прикрепить к другим сообщениям, что я должен сделать.

Решение?

1 Ответ

0 голосов
/ 16 января 2020

Eloquent не может быть правильным решением для больших наборов данных в простых случаях использования (очевидно, с настройкой и кэшированием Eloquent может хорошо работать с большими наборами данных).

Проблема при запросе больших наборов данных через Eloquent заключается в том, что каждый Строка в этом наборе данных должна быть возвращена как Eloquent Model.

Альтернативные варианты включают использование репозиториев для пользовательских запросов (см. шаблоны репозитория), eloquent для кэширования, разбиение на страницы и т. д. c.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...