MODXCLUB

6 нояб. 2014 г., 11:47

Пользовательские процессоры MIGXdb

Понадобилась возможность переопределить процессоры MIGXdb для работы с таблицей, через гугл ничего путного в рунете найти не удалось, но на официальном форуме попался топик с таким же вопросом и следующим ответом:
MIGX is searching for processors in this order: by default: core/components/yourpackage/processors/mgr/default/ core/components/migx/processors/mgr/default/ if you have defined a processor-path-name in the configuration: core/components/yourpackage/processors/mgr/customfolder/ core/components/yourpackage/processors/mgr/default/ core/components/migx/processors/mgr/customfolder/ core/components/migx/processors/mgr/default/ if no processor-file was found, MIGX falls back to the next folder in the order. you can just copy one of the default-processors into your custom-folder and modify it to your needs.
Джаст копи оказался не таким уж и джаст, потому как абсолютно непонятно какие имена должны быть у процессоров (или где их нужно указать в настройках MIGXdb). Если же имена предопределены, то как будет определяться для вывода какой таблицы предназначен какой процессор, ведь в моей схеме базы определено несколько таблиц. Так же не ясно какой путь нужно указать в "processor-path-name in the configuration". Помогите найти ответы на эти вопросы.
Вообще для этого в параметры TV-шки вписывается свой конфигуратор и там уже можно переопределять и плагины и все остальное. Деталей не скажу, ибо нет под рукой сейчас сайта где я это делал, но копайте в эту сторону.
Да, это который MIGX, а у меня проблема с MIGXdb - тот самый который таблицами позволяет управлять из админки.
Так там тоже конфигурации прописываются.
В официально документации написано
Of course you can create your own processors under your own processor-path.
Но не написано как... Ткните носом если в курсе где почитать?
https://github.com/Bruno17/MIGX. Читайте код модуля. Там все написано.
А еще может Алексей придет да подскажет.
Принцип поиска процессора таков
здесь указано очередность поиска проца сначала ищет в пакете в папке с указным путем проца потом в дефаулте если не находит то все повторяется в пакете самого MIGX
вам скорее всего требуется переопределить вызов getlist то есть списка в этом случаи сохроняете свой getlist.php в папку core/components/НАЗВАНИЕ_ВАШЕГО_ПАКЕТА/processors/mgr/default/getlist.php
core/components/yourpackage/processors/mgr/customfolder/ core/components/yourpackage/processors/mgr/default/ core/components/migx/processors/mgr/customfolder/ core/components/migx/processors/mgr/default/
все на этом паблик консультация заончина за подробностями обращайтесь в скайп AlexBaks_
Пришел Алексей, и подсказал :)
Отпишу тут ответы на вопросы, может кому пригодиться. Итааак, как и написано в документации процессоры ищутся в вышеуказанных папках. Рассмотрим такой вариант:
core/components/[yourpackage]/processors/mgr/[customfolder]/
[yourpackage] - это тот самый пакет который указывается в настройках MIGX на вкладке MIGXdb-Settings в поле Package
и вот далее, если в вашей схеме баз данных одна таблица или же, вы планируете работать только с одной таблицей или же вывод в админке только один (к примеру вы собираете несколько таблиц из БД в одну таблицу MIGX) то вы можете не переопределять [customfolder] а действительно ждаст копи процессоры из папки migxdb в папку default, где названия процессоров соответствуют действиям (например getlist.php вызывается когда нужно, как ни странно, получить список) и запрограммировать в них нужный функционал.
А вот если у вас несколько таблиц в админке которые выводят разные данные, вы можете указать Processors Path и этот путь будет подставляться вместо [customfolder] при поиске ваших процессоров.
Спасибо! Наверняка пригодится.

Добавить комментарий