Всего 118 716 комментариев

Василий Наумкин
24 июня 2012, 16:57
0
В таких случаях я смотрю исходник и делаю как там.

Вот исходник автоапдейта системных параметров — https://github.com/modxcms/revolution/blob/develop/core/model/modx/processors/system/settings/updatefromgrid.class.php

Процессору шлется строка data, он его принимает, проверяет, преобразует из JSON в массив и выставляет переменные объекта.

Очень красиво.
Виталий Киреев
24 июня 2012, 15:26
1
0
Почти освоил эту штуку. Только не получается сделать автоапдейт из таблицы (это как в системных настройках — меняешь и сразу запоминается). В методе modObjectUpdateProcessor::initialize() оказывается пустым $this->object и все тут…
Виталий Киреев
22 июня 2012, 08:48
0
Пустой имеется в виду подключал прямо в сниппете свою модель через addPackage(блаблабла, '');
Василий Наумкин
21 июня 2012, 17:50
0
А как тогда сниппеты работали, с пустым префиксом?

Или в них модель отдельно подключали?
Виталий Киреев
21 июня 2012, 17:49
0
Разобрался со всем, оказывается в сниппете addPackage был с пустым префиксом, а в процессорах не указан и выставляло по умолчанию modx_.
А $objectType только на ошибки в процессоре влияет.
Василий Наумкин
21 июня 2012, 16:18
0
Не подскажу.

Это перевод, а не лично мой опыт работы. Я пока только getlist пробовал погонять по исходникам самого MODX, проблем с префиксом не было, все нормально работало.

Могу посоветовать поглядеть продвинутые компоненты, которые используют эти «классные» процессоры.
Articles например — https://github.com/splittingred/Articles/tree/develop/core/components/articles/processors
Виталий Киреев
21 июня 2012, 16:12
0
А куда это вставить то можно, если идет class MessageGetListProcessor extends modObjectGetListProcessor {...} а потом сразу return MessageGetListProcessor;

Нашел в ошибках, что этот процессор запрашивает таблицу, начинающуюся на modx_ хотя у меня в схеме без него. В сниппетах все прекрасно работало. Подскажите, пожалуйста, где убирается этот префикс?
Иван Брежнев
21 июня 2012, 15:55
0
2. Запускается функция checkPermissions(), которую вы можете использовать для проверки любых прав доступа.
Иван Брежнев
21 июня 2012, 15:55
0
2. Запускается функция checkPermissions(), который вы можете @@импользовать@@ для проверки любых прав доступа.
Василий Наумкин
21 июня 2012, 15:25
0
Я делаю просто — print_r($var); die;
И смотрю в консоли браузера что выводится коннектором.

Про лексикон ничего не могу сказать, тут нужно разбираться, а мне некогда.
Виталий Киреев
21 июня 2012, 15:17
0
Не пойму как вообще debug проводить. Вроде все делал по туториалу Doodles, только заменяя значения на свои таблицы и классы. В итоге табличка выводится, но пустая. Обращение к connector.php возвращает {«total»:«0»,«results»:[]}.
Плюс еще у меня $objectType никак не влияет на значения в лексиконе. Задаю к примеру $objectType = 'my_cmp.message' и $_lang['my_cmp.message_id'] = 'ID сообщения'. В табличке вывожу заголовок header: _('id') — получается пустой. А если выводить header: _('my_cmp.message_id') — он выводится.
21 июня 2012, 12:59
0
ок! :)
все дочитал, перевод удачный, сравнивал некоторые отрывки с оригиналом, в общем понравилось, спасибо! :)
хотя, признаюсь, материал понятен пока на 70-80%, нужно будет еще почитать и вернуться, когда будет писать свои компоненты :)
пока увидел только еще одно исправление — «Когда вы сделали замечательно окно на modExt/ExtJS» — наверно, «замечаетльное»
Василий Наумкин
21 июня 2012, 12:43
0
Спасибо!
Дочитайте до конца и давайте все правки сразу, списком =)
21 июня 2012, 12:41
0
после 14 пункта в абзаце:
«каждый „классный“ процессор (create, update, getlist, remove и get) имеет собственные и методы» — думаю «и» не нужно >> «имеет свои собственные методы»
21 июня 2012, 12:30
0
во втором абзаце «чущественно»
Василий Наумкин
21 июня 2012, 12:25
1
0
Перевел, как смог. Пишите ошибки в комментах — буду править.
Василий Наумкин
21 июня 2012, 11:05
0
Окей.

Будет время — напишу про создание ресурсов с фронтенда — добавляйте rss блога себе в ридер.
21 июня 2012, 11:00
0
да, не могу сказать, что полностью освоил всю гибкость настройки прав доступа, но создать группу пользователей, предоставить политику, доступ к контекстам, связать с пользователями и др. настойки — это можно.
Василий Наумкин
21 июня 2012, 09:06
0
Это лучше в той статье и спросить =)