Сергей Шлоков

Сергей Шлоков

С нами с 31 января 2013; Место в рейтинге пользователей: #5
23 августа 2019, 15:38
+1
Я бы всё-таки не стал рассматривать REST в реализации MODX. Мало того, что сам стандарт уже старый и ограниченный, так ещё и в MODX он хрен знает как поддерживается. Многие серверы по умолчанию отключают опасные методы. Как в этом случае реализовывать глаголы? Костылями как в Laravel? Есть смысл обратить внимание на JSON-API или OpenAPI, в которых решены многие проблемы REST.
23 августа 2019, 15:34
0
По сравнению с другими у GraphQL сложнее порог входа. Нужно учить язык. JSON-API в этом плане проще. И масштабируемее. Можно начать с простого REST, а закончить сложными запросами. Есть ещё OpenAPI. В общем только выбирай.
23 августа 2019, 06:51
0
Так мы вроде эту парадигму и обсуждалитут).
А по API что скажешь?
22 августа 2019, 22:07
+2
Какие есть предложения по API? RestAPI, JSON-API или GraphQL?
22 августа 2019, 12:24
+1
Константин, не шали. Прокляну! ))
22 августа 2019, 09:49
0
По поводу последнй цитаты… Представляете уровень его самомнения? Он не фанат статических методов. Не нравиться, не используй. А кому то нравится. И что? Пшли на… Просто удивительно!
22 августа 2019, 09:00
0
Ну я писал про свой PR. И именно в нём Джейсон и высказался наконец-то. Ибо в Слаке он тогда ответил «нафиг», а на просьбу объяснить просто забил.
22 августа 2019, 08:46
+1
Этот PR завязан на того же Джейсона. Требуется его благоволение, чтобы добавил. Да ещё и вопрос куда. В третью версию — значит выбросить в пропасть. А во вторую вряд ли добавил бы.
А идея с админкой — это альтернатива, которая полностью исключает необходимость обращения к этому товарищу. Это просто обычный компонент, но не совсем обычный. ))

Современные тенденции требуют использования модных JS фреймворков. И тут я полностью выключаюсь из процесса ибо я не дизайнер, не верстальщик и у меня нет большого опыта работы с Vue/React/Angular и т.п. фреймворками. Могу чисто языком поработать ))
22 августа 2019, 07:59
+1
По моему опыту скажу, что было бы отличным решением разработать, что сейчас делает Дмитрий Лукьяненко: Evo с Laravel.
Таких как Дмитрий в лагере Revolution не нашлось. Именно поэтому и был предложен более простой вариант. Но я не уверен, что даже этот вариант сообщество потянет. Это раз.
А в третьих, что там напилит Дмитрий покажет время. И если напилит. И то что получиться, думаю, будет интересно ему и ещё троим-четверым (не в обиду Дмитрию). И пока Revo не скатилась до уровня Evo нужно принимать срочные меры. Иначе через несколько лет его постигнет судьба младшего брата.
22 августа 2019, 07:37
+6
После публикации этого поста Марк обратил внимание на мой PR (@Иван Бочкарев приложил руку) с возможностью расширения класса modX, дающий разработчикам больше контроля над ядром, ибо можно создать свой класс приложения и не ждать милости от core-разработчиков. Марк высоко оценил данную возможность.
Но вот пришел главный и поставил жирную точку. Цитата:
I am not necessarily in favor of making the modX class itself more extensible, at least not in the current architecture. We already have too much flexibility at times.
Т.е. MODX и так слишком гибкий. Харэ.

I'm concerned that encouraging extensions to the modX class would open up a whole new set of problems and make upgrade paths even more difficult.
Каким боком разработчика ядра должно касаться то, что делает пользователь MODX, самостоятельно расширяющий систему. Твоя задача дать эту возможность, а дальше не твоя забота. Но нет, ни в какую он (Джейсон) не хочет давать контроль над ядром, даже на уровне пользователя.

I'm also not a fan of using static instance methods to retrieve MODX as a dependency. Dependencies should be explicit, in my opinion.
Разработчик добавил этот метод в ядро, но пользоваться им, он считает, плохо. Хотя в том же ядре полно использований статических методов. И примеры из смежный более успешных продуктов не убедительны.

Ну что я могу сказать. Этот человек делает всё, чтобы MODX остался там, где он есть.
20 августа 2019, 16:05
+1
Это постхук должен быть.
20 августа 2019, 15:25
+1
Поавильно последний вариант. Только я бы использовал str_replace вместо parse. А в ифе вызови
log_error($content);
И посмотри, что в лог пишется.
20 августа 2019, 14:04
+1
«Ядро без дополнений… понятно, что не ядро...»

Как хочешь, так и понимай. Сколько лет MODX, а базового решения для апи нет. Сделать универсальное решение — большое дело. Хотя бы через компонент.
20 августа 2019, 13:56
0
Он не завязан на бекэнд. Поэтому с ним меньше всего проблем.
20 августа 2019, 13:55
0
Во первых, ещё ничего не делается. А во вторых, само ядро не трогается.
20 августа 2019, 13:44
+1
Задача как раз начинать не с ядра.
20 августа 2019, 13:43
0
Вот тут и вылазит проблема завязки на специфичный бекэнд. Совместимости нет.

Главный продукт — минишоп. Начинать нужно с него.
20 августа 2019, 13:40
0
Пока обсуждаем идею. Роудмап — следующий шаг.
20 августа 2019, 13:09
0
Я выше написал, что вопрос один, а пример кода другой. Ответ — я же не бом бом. Ни примера вызова сниппета ничего. Лично я не знаю, чем еще помочь.