24 сентября 2019, 20:01 Ну если ничего не делать, то так и случится. Упорство Дмитрия должно послужить положительным примером. Новые дополнения и их версии / Evolution CMS 2.0 на компонентах Laravel 6.0 — естественная эволюция MODX Evolution 24 +1
24 сентября 2019, 19:57 Я бы на это сильно не рассчитывал. Узкое место MODX совсем не в загрузке классов. Новые дополнения и их версии / Evolution CMS 2.0 на компонентах Laravel 6.0 — естественная эволюция MODX Evolution 24 -1
24 сентября 2019, 19:50 Небезопасная вещь. Новые дополнения и их версии / [UserAuthHash] - авторизацию пользователя по хэш-коду. 11 0
20 сентября 2019, 13:25 Ненавижу такие комментарии. Для разработчиков / Процессоры в RESTful API: использовать нельзя выбросить 17 +9
20 сентября 2019, 10:20 А под своими процессорами ты имеешь ввиду свои, но наследники modProcessor, или вообще свой механизм? Просто ты ответил немного неопределённо — Только 3й вариант, только свои процессоры.То ли за третий, то ли за второй. П.С. Надо было сделать четыре комментария с каждым вариантом и за них голосовать. Эмулировать опрос. Стормозил чутка. Для разработчиков / Процессоры в RESTful API: использовать нельзя выбросить 17 0
20 сентября 2019, 09:55 * не вижу причины Для разработчиков / Процессоры в RESTful API: использовать нельзя выбросить 17 0
20 сентября 2019, 09:44 Я тоже склоняюсь за третий вариант. Для разработчиков / Процессоры в RESTful API: использовать нельзя выбросить 17 +1
20 сентября 2019, 09:44 Боюсь большой объем работы просто застопорит все.Это да. Особенно когда свободного времени мало. Но я вижу причины для чего так срочно нужно выпустить решение с костылями. В крайнем, лучше сделать копи/паст по всем правилам современной разработки. Для разработчиков / Процессоры в RESTful API: использовать нельзя выбросить 17 0
20 сентября 2019, 08:29 Думаю, это не очень правильный подход. Или одно или другое. Для разработчиков / Процессоры в RESTful API: использовать нельзя выбросить 17 0
20 сентября 2019, 06:37 Потому что ты запрашиваешь объекты. И тебе выводятся поля из объекта. Для понимания. Если ты создашь новый пустой объект и выведешь его $resource = new modResource(...); $resource->toArray();то тоже получишь все поля, но пустые. В твоём случае, ты инициализируешь указанные в select поля объектов данными из базы. Остальные поля — так называемые lazy. Они инициализируются из кэша. Если кэша нет, то делается запрос в базу и сохраняется в кэш. Если нужно получить массив данных (что предпочтительней), то лучше делать так $resources = []; if ($c->prepare() && $c->stmt->execute()) { $resources = $c->stmt->fetchAll(PDO::FETCH_ASSOC); } foreach($resources as $resource){ echo "<pre>".print_r($resource, true)."</pre>"; }В этом случае получишь то, что запрашивал. И памяти меньше кушает. Вопросы / Почему не срабатывает select на modResource? 2 +1
19 сентября 2019, 12:33 А Slim рекомендует так location ~ ^/api/ { try_files $uri /api/index.php$is_args$args; }Какое решение лучше? Для разработчиков / MODX и REST 5 0
19 сентября 2019, 09:52 Про права я писал тут. Насчёт вызова событий нужно подумать. Это зависит от реализации. Для разработчиков / Процессоры в RESTful API: использовать нельзя выбросить 17 0
19 сентября 2019, 09:43 Выскажу здесь своё никому не нужное мнение. Интересная статья для размышления. Не хватает четвертого варианта, который описал Василий выше и который использую я при разработке RESTful API дополнения. Первые два варианта из разряда «забить гвоздь телефоном». Результат маленький и большие накладные расходы. Третий вариант — это взять маленький молоточек. Чтобы забить средние и большие гвозди придётся сильно попотеть. Цикл статей, имхо, нужен только для понимания, что встроенные средства MODX мало пригодны. Только для исключительно простых целей. Как по мне, даже JSON:API спецификация с его include, fields, filter и sort неудобна. Мне как разработчику было бы проще послать POST запрос, в котором описать как положено select, where, limit и т.п. Да, это уже не REST, но возможностей гораздо больше. Для разработчиков / MODX и REST 5 +6
17 сентября 2019, 20:36 Во-первых, это не готовое API, а инструкция по его созданию. Во-вторых, про это уже говорили. Данное решение изучалось. Оно оказалось крайне ограниченное. Ничего кроме items/15 вы не получите.Т.е. статью с комментариями одним запросом никак не получить. И поля никак не указать. Так что на этом серьезное API не сделаешь. В-третьих, сам Джейсон недавно в обсуждениях на Github писал, что делает API через Slim. Т.е. даже сам сапожник не носит свои сапоги. В-четвертых, задача попробовать минимизировать зависимость от core-разработчиков. И в-пятых, третья версия MODX планировалась на Slim 3. Возможно наше решение даст толчок для реализации этих планов. Так что всё пока логично. А вас, товарищ, мы из групповухи вычеркиваем.) Для разработчиков / AdminRevolution. Быть или не быть? 148 +3
17 сентября 2019, 19:10 которое, в принципе уже и так естьAPI в студию! Для разработчиков / AdminRevolution. Быть или не быть? 148 +1
17 сентября 2019, 15:11 Заметка о ходе разработки API. Также добавил в статью ссылку на демку. П.С. Какие-то странности с уровнем комментариев. Писал в корень — показывает 3 точки, хотя ссылки на parent нет. Для разработчиков / AdminRevolution. Быть или не быть? 148 +7
29 августа 2019, 06:39 AjaxForm ничего не отправляет. Это обёртка над FormIt. Там и правьте. Хук Email. Вопросы / AjaxForm отправляет письма с name вместо названия? 2 0
26 августа 2019, 12:37 Интересно, Цукерберг уже в курсе? ) Лично я для старта выбрал Swagger, т.е. OpenAPI спецификацию. Она более читабельна, чем JSON-API. Для разработчиков / AdminRevolution. Быть или не быть? 148 +1
Возможно ли реализовать возможность предоплаты за доставку на сайте? У меня Робокасса, у них вроде есть docs.robokassa.ru/ru/iframe
Редизайн сообщества На больших экранах основной текст статьи я бы сделал 18 px. Да и текст комментариев можно таким сделать. Для меня лично 16 — мелковато на больших экранах (в комментариях вообще 15 ...
MiniShop3 1.11.0 при клике на radio идет пересчет итоговой суммы в orderUI, в зависимости от способов(оплаты доставки) я так поняла. попробуй код запуска события поставить ниже чем orderUI, после
ImageOptimizer - WebP/AVIF и responsive <picture> для MODX 3 Дополнение доступно modstore.pro/packages/photos-and-files/imageoptimizer
Localizator3 для MODX 3: перевод полей и TV без отдельного context на язык, Vue 3 + PrimeV... Добавил localizator3_default_language
msInShopNotify Начиная с версии 3.0.0-beta добавлена поддержка MiniShop3 Минимальные требования: PHP 8.4 MODX 3.2 MiniShop3
MaxNotify Обновление 1.2.0-pl (03.07.2026) — добавлены уведомления о заявках FormIt через hook-сниппет `maxNotifyFormIt`; — добавлены уведомления о заявках SendIt через hook-...
[msBonus2] 1.3.0 Бонус-коды, уведомления о сгорании и совместимость с msMultiCurre... Да, планируется. Даже чуть больше, чем просто бонусная система)
Просто ты ответил немного неопределённо —
То ли за третий, то ли за второй.
П.С. Надо было сделать четыре комментария с каждым вариантом и за них голосовать. Эмулировать опрос. Стормозил чутка.
Для понимания. Если ты создашь новый пустой объект и выведешь его
то тоже получишь все поля, но пустые.
В твоём случае, ты инициализируешь указанные в select поля объектов данными из базы. Остальные поля — так называемые lazy. Они инициализируются из кэша. Если кэша нет, то делается запрос в базу и сохраняется в кэш.
Если нужно получить массив данных (что предпочтительней), то лучше делать так
В этом случае получишь то, что запрашивал. И памяти меньше кушает.
Какое решение лучше?
Интересная статья для размышления. Не хватает четвертого варианта, который описал Василий выше и который использую я при разработке RESTful API дополнения.
Первые два варианта из разряда «забить гвоздь телефоном». Результат маленький и большие накладные расходы.
Третий вариант — это взять маленький молоточек. Чтобы забить средние и большие гвозди придётся сильно попотеть.
Цикл статей, имхо, нужен только для понимания, что встроенные средства MODX мало пригодны. Только для исключительно простых целей. Как по мне, даже JSON:API спецификация с его include, fields, filter и sort неудобна. Мне как разработчику было бы проще послать POST запрос, в котором описать как положено select, where, limit и т.п. Да, это уже не REST, но возможностей гораздо больше.
Во-вторых, про это уже говорили. Данное решение изучалось. Оно оказалось крайне ограниченное. Ничего кроме items/15 вы не получите.Т.е. статью с комментариями одним запросом никак не получить. И поля никак не указать. Так что на этом серьезное API не сделаешь.
В-третьих, сам Джейсон недавно в обсуждениях на Github писал, что делает API через Slim. Т.е. даже сам сапожник не носит свои сапоги.
В-четвертых, задача попробовать минимизировать зависимость от core-разработчиков.
И в-пятых, третья версия MODX планировалась на Slim 3. Возможно наше решение даст толчок для реализации этих планов.
Так что всё пока логично. А вас, товарищ, мы из групповухи вычеркиваем.)
П.С. Какие-то странности с уровнем комментариев. Писал в корень — показывает 3 точки, хотя ссылки на parent нет.Лично я для старта выбрал Swagger, т.е. OpenAPI спецификацию. Она более читабельна, чем JSON-API.