Здравствуйте. Наслышан, что тут знатные знатоки по работе с процессорами в MODX. Самому как-то не приходилось особо вникать в процессоры, за исключением использования штатных типа resource/create, но вот теперь такая необходимость возникла и вместе с ней небольшой ступор. Теперь к делу.
Есть своя CMP, там таблица с данными, в которой предположим 3 колонки id, name и третья колонка с кнопкой. При нажатии на кнопку берется id текущей строки и отправляется через коннектор на соответствующий процессор. Если например я на событие по клику повешу отправку на процессор remove, то соответственно нужная строка из таблицы будет удалена, значит кнопка точно работает. С этим разобрались. Но мне нужно отправить запрос на свой процессор и там обработать данные. Проблема в том что я не знаю как отловить переданный id в процессоре чтобы уже использовать его дальше. Например по клику на кнопку поле name меняется на заранее указанное в процессоре. Через приложение Николая Console это выглядело бы примерно так и name в табличке с соответствующим id меняется:
А вот как подобную манипуляцию выполнить в процессоре не знаю. То есть мне нужно получить в переменную id, получить объект и уже дальше выполнять свой скромный код. Пробовал так, но ничего не выходит:
Буду весьма благодарен за советы. Заранее спасибо.
> Но мне нужно отправить запрос на свой процессор и там обработать данные. Проблема в том что я не знаю как отловить переданный id в процессоре чтобы уже использовать его дальше.
А вы точно данные передаете на коннектор (и далее на процессор)?
Все входящие данные в процессоре видны в переменной $this->properties. Оттуда процессоры и дергают значения через метод $this->getProperty($propertyName);
Пропишите в своем процессоре
И после вызова смотрите в MODX-логах что там вообще вам на процессор пришло.
Ну и почитайте внимательно это: https://modxclub.ru/topics/vse-chto-vyi-xoteli-znat-o-proczessorax-no-boyalis-sprosit-1563.html
Здравствуйте. Спасибо большое за ответ. Уже немного начинаю разбираться с процессорами, сделал в своем процессоре так, теперь данные в табличке меняются на заранее предустановленные:
Но теперь у меня другой вопрос. Возможно ли в процессоре обратиться, например, к ресурсу и изменить его поля или запустить в этом же процессоре системный resource/create? Кстати, подсматриваю в статью, которую вы мне дали по ссылке. Жаль нет поиска по вашему сайту, потому что раньше много полезных материалов было у вас, а сейчас их не найти.
Вроде бы разобрался насколько было нужно. Оказалось в процессорах немного не так надо было писать как, например, в сниппетах. Там чтобы получить объект нужно вот так оказывается:
Николай, спасибо за ваши статьи по процессорам модекса, очень помогли. Оказывается процессоры вообще очень крутая штука, почему я их раньше не использовал...
Всегда пожалуйста.