Сергей Шлоков
С нами с 31 января 2013; Место в рейтинге пользователей: #321 минута назад
Ну планируется что расчеты будут делать клиенты на сайте. А чтоб они не могли приписать себе любую цену товара считать цену надо на стороне сервера. Т...
Плюсы и минусы Vue и gtsAPI 20
4 часа назад
Крутые обновления! Просто класс! Спасибо!
Хотел уточнить:
Scheduler… Для MiniShop3, я (что логично) планирую и дальше использовать эту систему, до...
MiniShop3 - чего ждать в Beta версии. 6
5 часов назад
xtype: modx-combo-user
Это xtype (тип поля) самого MODX, выводит всех пользователей modUser
Список всех возможных типов полей
Вывести поле создателя при редактировании ресурса 3
6 часов назад
Пишет не валидный токен «Невалидный токен»
Полностью переустановил modx полностью переустановил sendit
Apache:
2.4.55
Панель управления Beget My...
[SendIt 2.0.0] Пагинация и обновлённая загрузка файлов 23
Сегодня в 13:40
Написал вот такой плагин, меня устраивает
<?php
// OnDocFormRender
$modx->controller->addHtml('<script>Ext.onReady(function(){
...
SEOSuite - после установки! 3
Сегодня в 09:56
Правильно так:
{('<script type="text/javascript" defer> let my_variable = "' ~ $_modx->resource.MyTv ~ '";</sc...
Как правильно вставить modx переменную в js скрипт на Fenom 1
Вчера в 10:49
Сегодня вышло обновление от тебя, всё исправлено! Спасибо!
PageBlocks. Удобное управление контентом сайта. 38
Вчера в 10:07
@Артур Шевченко
Добрый день!
Можете подсказать.
Делаю Регистрацию на сайте, с помощью Sendit.
Согласно документации создал отдельно копию пр...
Как кастомизировать сообщения после Регистрации на сайте? 4
Вчера в 09:40
Сталкнулся с двумя особенностями…
1) После апдейта с 3.5.2 на 3.6 в табе «Расписание Крон» задания перестали отображаться. Сделал удаление полное ком...
CronTabManager - или как управлять crontab из админки 19
30 ноября 2024, 08:41
Ну вот и правильная мысль, я же правильно понимаю, что все дополнения, что написаны на ms2 надо переписывать на ms3 многие авторы это не будут делать,...
MiniShop3 - 1.0.0-alpha 15
Боюсь тебя расстроить, но MODX — это синтаксический сахар над PHP. Юзай последний. Не отказывайся от своих принципов.
Не используй. Сделай мне больно.
П.С. Только щас заметил, что мой коммент почему-то попал не в корень, а залетел в ответ на твой коммент. Видимо глаза уже подводят.
Лично я не вижу особой необходимости в объекте $_modx как ограничителе функциональности для безопасности. Этого нет ни в одном шаблонизаторе. Видимо никому не понадобилась такая фича. А вот как объект для работы со вьюхами (шаблонами, чанками, ресурсами) он хорош. Для правильной работы, если можно так выразится. И юзер $_modx->user там нужен! Хотя я бы сделал юзера отдельным объектом для удобства. Но считаю, что кэшменеджер тут лишний. Вот такое имхо. Но, как правильно сказал Павел, ты может делать что хочешь и как хочешь. Fenom позволяет юзать даже объект $modx. It's up to you.
А в cron удаляем кэш и парсим страницу сниппетом
Что важно! В данном случае сам сниппет на странице вызывается некэшированным. Поэтому кэш самой страницы обновлять не нужно. Только кэш сниппета!!! Обратите внимание, насколько код стал проще.
Функция snippet() сама проверит кэш. Если его нет, то выполнит указанный сниппет и результат сохранит в кэш. И не нужно вычислять все эти секунды. Cron каждую неделю будет обновлять кэш независимо от того, есть он или нет. Поэтому сниппет differenceBetweenDatesInSeconds не нужен. И даже вреден. Ибо делает ненужную работу для каждого запроса страницы.
П.С. И ещё совет. Не пихайте логику во вьюхи. Это бад практис! Перенесите логику в сниппет и вызывайте его на странице.
Два. Забейте в поиск «pdoresources modx» и получите нужные ответы. Можно глянуть доку. Тут нужно обратить внимание на параметр «parents». Подсказка —
Это нужно вызывать в шаблоне статей.
pdoMenu работает с данными уже ввиде дерева, а не с плоским списком. Проще всего реализовать такое через Fenom. К сожалению, из коробки сниппеты pdoTools не умеют работать сырыми данными. Попробуйте разобраться с таким решением. Дальше как два пальца…
Моё мнение — выделить на него одну минуту, сняв шляпу и помолчав. RIP.
В таком формате xPDO вставляется без обработки.
П.С, Это json массив с одной строкой.
Обрати внимание на метод $app->run();
В нём вызываются конкретные классы. Причем, если не указан конкретный реквест, то он определяется автоматически по установленным пакетам (я выше писал).
А мне безумно нравится. В пекло PHP 5. ))
Найн. Ю а ронг.
Интерфейсы дают малую связанность. Т.е. ты можешь подсунуть в метод любой класс, соответствующий определенным требованиям. За это как раз и отвечает интерфейс.
У того же Slim эти классы пробрасываются при инициализации приложения. В нем жестко прописана проверка наличия нескольких пакетов. Сначала свой пакет, потом Guzzle и ещё какие то. Не помню. Но можно и самому инстанциировать любой свой класс запроса или ответа. Главное, чтобы соответствовал интерфейсу. Иначе будет ошибка.
Тройка ещё не соответствует. Например, $response->toJson() не соответствует стандарту. А вот четверка поддерживает почти все текущие утвержденные стандарты. После тройки приходится привыкать. И всякие методы обработки запроса и ответа выносить на сервисный уровень.
Не обязательно расширять сервис ради проверки прав. Мы можем сделать любую проверку самостоятельно
Правильно говорить именно RESTful API, но в народе уже прижилось неправильное название REST API.