Модели данных объединения PHP ATK

Например, у меня есть только 1 модель и 10 таблиц. Я хочу перенести все данные из таблиц в свою 1 модель, чтобы я мог использовать Grid/Crudsearch/paginator и т.п.

Если я использую setSource на сетке (а не на setModel) я теряю нумерацию страниц, быстрый и расширенный поиск.

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

Есть идеи?

1 ответ

Полная поддержка UnionModel теперь доступна как расширение для Agile Data. Он должен легко объединять 10 других моделей, выравнивать поля, предлагать поддержку группирования, разбивку на страницы, условия и другие функции, которые вы ожидаете от обычной модели.

UnionModel автоматически отбрасывает условия, ограничения и агрегирование до уровня отдельной модели, чтобы сделать запрос оптимальным.

Более подробная информация о UnionModel здесь:

http://www.agiletoolkit.org/data/extensions/report

Источник: http://github.com/atk4/report

Agile Data теперь является отдельной структурой, но ее можно использовать с Agile Toolkit, вам просто нужно переключиться на ветку 4.4.

Если вы предпочитаете не использовать это расширение, вам придется вручную создавать выражения и выравнивать поля подзапроса самостоятельно.

Другие вопросы по тегам