8 ответов

4 просмотра

public function getImages() { return $this->hasMany(ImageManager::class, ['item_id' => 'id']) ->andWhere(['class' => self::tableName()])->orderBy('sort'); }

Это в banners

Сергей-Тарханов Автор вопроса
Максим Михалыч
Это в banners

дальше не подскажу, нужны программисты, но тут таких нет.

Максим Михалыч
public function getImages() { return $this->ha...

В rules моделей следует добавить правило по типу: ... [[self::ITEM_ID_FIELD], 'exist', 'targetClass' => ImageManager::class, 'targetAttribute' => [self::ITEM_ID_FIELD => ImageManager::ID_FIELD]], ... Описанный метод построил корректно, но условие и сортировку здесь добавлять не надо. Просто: ``` public function getImages() { return $this->hasMany(ImageManager::class, ['item_id' => 'id']); } А where и orderBy сделаешь на уровень выше Ещё рекомендую помещать в класс моделей константы с наименованием полей. Так будет проще потом их редактировать и использовать Так же ты можешь в нотации вынести связь. Так: ``` /** *... *@property ImageManager[] $images *... */ ``` Тогда сможешь обращаться как к объекту типа: ... foreach($result->images() as $image) { $images->getId(); } ...

Stanislav
В rules моделей следует добавить правило по типу: ...

Мне чат гпт, сгенерил этот гож. И он работает)) $query = Banners::find() ->select(['banners.*', 'image_manager.name']) ->Leftjoin('image_manager', 'banners.id = image_manager.item_id') ->where(['alias' => 'banner-home']) ->all();

Максим Михалыч
Мне чат гпт, сгенерил этот гож. И он работает)) $...

Это выборка через Join. Допустимый вариант. Но правильнее через модель. Особенно, если будете работать над кодом не один и необходимость маппить данные таким образом повторяется в разных сервисах/контроллерах

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

Обсуждают сегодня

Сonst magicTgHTML = (text, entities) => { let processedText = text; let offsetShift = 0; entities.forEach(entity => { const { offset, length, type, url, ...
Андрей
1
Кстати, раз про скачивание файлов разговор зашел) Сделал бота для себя (транскрибирующего и суммаризирующего встречи) но не ожидал что за 2 месяца 10к пользователей набежит😅...
Andrey Obolenskiy
8
коллеги привет. уже второй день бьемся об заклад с одной ошибкой, может вы сталкивались с таки странным поведением? есть тестовый сервер, на который паблишим релизную версию W...
Magzhan
11
Слушайте, а при создании навигации на Tailor рили нельзя определять активный пункт навигации, как в Static Pages?
Pavel Lautsevich
11
Всем привет, подскажите где можно найти фриланс работы?
Вадим
7
Господа, а как такое в миграцию засунуть?
Денис Александрович
12
Привет. Кто-то использует Vault KV как корпоративную хранилку паролей? Какие минусы?)
Alex R
3
Добрый день, в тейлоре насоздавал галерей и хочу на странице вывести только те, что указаны в массиве и самое главное в том же порядке. gallery.whereIn возвращает какой свой ...
Artem Anufrirev
2
Ребят, а как ограничить количество страниц в пагинаторе?
Atid Kitdeveloper.ru
2
Так а кто может спарсить всех участников чата? Идишники
Magic
18
Карта сайта