Есть ли подробный пример по Yii2 GridView -с данными из связанных таблиц?
Есть три модели :
люди - id , name
хобби- id, name, about
люди-хобби id-people, id-hobbie
связь многие ко многим . нужно вывести в грид содержимое люди-хобби , причем чтобы и имена отображались и названия хобби и описания хобби.
так же нужно фильтровать по всем полям и искать тоже по всем.
Нарыл кучу примеров, но либо не для Yii2 , либо про то, как перекрасить шапку в гриде или не подробные - часть нужных действий просто не упоминается. Совершенно не за что зацепиться. Общее представление о Yii имею. Писал на 1-м простенькие проекты, а с этой задачей полная труба (((( . Документация дико обширная и конкретных ответов не дает. Отдельные вещи я могу там подсмотреть, но в целом картинка не складывается.
В общем, буду благодарен за любые советы и ссылки. Можно на аглицком.
Все про GridView Тык
Все про связанные данные Тык Про связи смотрите серидину статьи. Обратите внимание на использование связанной таблицы и вариативность жадных загрузок. Дабы не плодить 100 запросов.
coderisimo: Ну, а в чем у вас сложности? В поисках по разным составляющим? Вы можете сделать в Строителе запросов, через AndWhere абсолютно разные запросы. Если вам нужно именно заточить поиск, много и по всем параметрам. Можно использовать Sphincs
Там, как я понял, нужно генерить не только модели самих таблиц, но и search модели. при генерации можно установить кучу параметров (какие нужны-какие нет - не ясно). Да ,и вообще, подобная генерация представляется мне черным ящиком, ведь нигде нет объяснений "что это и зачем". Конечно,я пару раз попробовал.. получил ошибки и понял что "ку". Ясно, что можно (даже такому туповатому человеку как я) разобраться. Но в моем случае был еще один важный фактор - время. Так что я второй раз в жизни скачал codeigniter , за минуту почитал, как там работать с моделями и ...проект почти готов. Сфинкс тьфу-тьфу не нужен. Мне кажется , для несложного функционала я нашел оптимальное решение. Работать через в модели в кодигнайторе удобнее, чем писать все вручную, а сложность работы низкая.
Ну, это из разряда очевидного. Пишите на том, на чем вы умеете. Серч Модель генерится в разделе CRUD, модель поиска осуществляется по параметрам, которые получает из формы методом load т.е. из грида. Но и при желании поисковую модель и модель можно склеить так было в версии Yii 1. Разделение сделали по причине того, что для разных гридов могут быть разные условия. С моделями тоже очень легко работать, вы можете генерировать их на основе вашей БД, хотя вариант наоборот (если работали с Doctrine), тоже имеется. Yii2 хоть и имеет малый порог вхождения, он требует времени. Удачи вам в ваших проектах!