Yii2-images + жадная загрузка

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
Никита096
Сообщения: 28
Зарегистрирован: 2017.02.01, 17:23

Yii2-images + жадная загрузка

Сообщение Никита096 »

Всем Привет.
Сейчас в цикле запрашивается из базы отдельно каждая картинка

Код: Выделить всё

<?php foreach ($posts as $post): ?>
$image = $post->getImage();
...
<?php endforeach ?>
Запросы однотипные, поэтому вопрос. Можно ли загрузить все картинки одним запросом?


Щас че-т подумал, наверное фигню спрашиваю. Но оставлю, мало ли:)
Аватара пользователя
futbolim
Сообщения: 2051
Зарегистрирован: 2012.07.08, 19:28

Re: Yii2-images + жадная загрузка

Сообщение futbolim »

$posts = Post::find()->with(['iamge'])
Никита096
Сообщения: 28
Зарегистрирован: 2017.02.01, 17:23

Re: Yii2-images + жадная загрузка

Сообщение Никита096 »

futbolim писал(а): 2017.05.23, 14:39 $posts = Post::find()->with(['iamge'])
Это же Yii2-image CostaRico.
Если бы я писал свои связи, то конечно. А там же как-то через поведение подключается или тип того.
Ну крч именно такой связи нет.
Аватара пользователя
PartyPoison
Сообщения: 69
Зарегистрирован: 2017.04.27, 11:04

Re: Yii2-images + жадная загрузка

Сообщение PartyPoison »

Никита096 писал(а): 2017.05.23, 14:47
futbolim писал(а): 2017.05.23, 14:39 $posts = Post::find()->with(['iamge'])
Это же Yii2-image CostaRico.
Если бы я писал свои связи, то конечно. А там же как-то через поведение подключается или тип того.
Ну крч именно такой связи нет.
$images = $model->getImages();

Читайте доки https://github.com/CostaRico/yii2-images .
Аватара пользователя
futbolim
Сообщения: 2051
Зарегистрирован: 2012.07.08, 19:28

Re: Yii2-images + жадная загрузка

Сообщение futbolim »

PartyPoison писал(а): 2017.05.23, 14:57
Никита096 писал(а): 2017.05.23, 14:47
futbolim писал(а): 2017.05.23, 14:39 $posts = Post::find()->with(['iamge'])
Это же Yii2-image CostaRico.
Если бы я писал свои связи, то конечно. А там же как-то через поведение подключается или тип того.
Ну крч именно такой связи нет.
$images = $model->getImages();

Читайте доки https://github.com/CostaRico/yii2-images .
Тс хочет жадную, читайте название темы )
Аватара пользователя
Йож
Сообщения: 574
Зарегистрирован: 2015.08.26, 03:05

Re: Yii2-images + жадная загрузка

Сообщение Йож »

Там имя модели при выборке используется, поэтому только если писать свою функцию с реализацией жадной загрузки.

Может быть, можно связь по двум полям сделать one to many с Вашей модели на модель модуля "yii2-images/models/Image.php" по полям: itemId, modelName. (Но не знаю, можно ли так в yii2, mysql, например, позволяет иметь два внешних ключа).
Ответить