Обслуживание и обновление TYPO3 CMS. Консультации по управлению сайтом. Обновления используемых расширений. Серверная поддержка. Обновление системы безопасности и необходимых патчей. SEO-оптимизация. Помощь в решении задач важных для заказчика. SSL-сертификаты любого типа. Защита данных и безопасность. Оптимизация функций, внедрение новых возможностей, поиск и исправление ошибок.
Persistence Инициатива: отчет о встрече
Интеграция с GraphQL
Основная цель встречи была интеграция GraphQL API в ядро TYPO3. Предварительно должен быть установлен внутренний API, используемый разработчиками, чтобы можно было получать структурированные данные. Из-за возможных дополнительных измерений, таких как языки и рабочие пространства, этот API должен разрешать надлежащие отношения в соответствии с заданным контекстом.
Чтобы представить этот API в качестве общедоступного веб-интерфейса (например, для использования в современных клиентских инфраструктурах, таких как Angular, VueJS или React), необходимо рассмотреть дополнительные аспекты. Наиболее важным является уровень разрешений для контроля доступа к данным, предоставляемым для общего доступа. Современные идеи основаны на пакете Symfony «security-acl», который предоставляет или запрещает доступ к различным обьектам, таким как таблица, поле, папки, файлы и т.д.
Конфигурация уточняющей таблицы
В процессе реализации определения семантики и неявного поведения свойств $TCA участники определили потребность структурирования текущего $TCA. Болеее правильно и лучше - целевые аспекты, связанные со схемой (хранение), обработка (проверка) и представление (отображение в пользовательском интерфейсе), являются целью выделенния дальше.
Поддержка типов данных JSON
Механизмы хранения отношений в TYPO3 поддерживают три различных типа: значения с разделителями-запятыми (CSV), хранящиеся в источнике, внешние ключи, хранящиеся в указанном субъекте, и отношения «многие ко многим», хранящиеся в определенной промежуточной таблице (MM).
В худшем случае хранилище CSV содержит только идентификаторы без сохранения их концепции - таким образом, соответствующее соотношение может быть определено только путем оценки текущих настроек $TCA и не является устойчивым к корректировкам. Типы данных JSON стали доступны в MySQL 5.7 и позволят хранить конкретную информацию, а также использоваться в соединениях базы данных. Doctrine DBAL уже поддерживает эти типы данных - однако в QueryBuilder не существует кросс-базисной реализации операторов типа JSON_CONTAINS.
Улучшение уровня доступа
Возможность определения разрешений на уровне таблицы или поля таблицы в настоящее время доступна только для внутренних пользователей и групп внутренних пользователей. Чтобы расширить область применения и предоставить полуоткрытую конечную точку для GraphQL, необходимо обеспечить возможность извлечения только определенной информации. Таким образом, концепции разрешений должны быть отделены от внутренних пользователей и любой пользовательской записи в целом. Пакет Composer «symfony / security-acl» предоставляет гибкую концепцию, основанную на списках контроля доступа (ACL), для динамического управления этими требованиями, касающимися обработки разрешений.
Уменьшение локализации и сложности рабочего пространства
Разрешение нескольких измерений содержимого, таких как языки и рабочие пространства, требует подробных знаний о реализации, особенно когда речь идет о разрешении отношений. Ранее уже упоминалось, что они могут быть сохранены в виде значений, разделенных запятыми, внешних ключей и использования промежуточной таблицы. Правильную информацию можно получить только следуя принципам извлечения «значений по умолчанию» и их наложения для каждого в соответствии с контекстом (языком и / или рабочей областью). Чтобы удалить сложность запроса и, возможно, разрешить прямые запросы - например, использование JOIN - семантическое значение заполнителей рабочей области должно быть переопределенно заново.
Будь частью этого.
В целом участники смогли определить дальнейшие шаги для постоянной инициативы, сформировать концепции для использования и разработать предварительную дорожную карту. Хотите быть частью этого?