Степан Прищепенко
С нами с 09 апреля 2013; Место в рейтинге пользователей: #9830 марта 2026, 20:49
PHP >= 8.2 должно быть. У MS3 минимум 8.2
[msCDEK] Расчёт доставки СДЭК в miniShop3 1
27 марта 2026, 14:49
Не получается установить pbQuiz. Требует pageblocks хотя я его установил. В чём может быть проблема?
pbQuiz — гибкий компонент квизов на контроллерах PageBlocks 4
27 марта 2026, 13:13
Все ок, почему то не выполнялся Cron на хостинге, решил через провайдера.
msImportExport 2.0 129
26 марта 2026, 21:13
С валидацией по шагам стало понятней, спасибо, с событием change после загрузки файла буду разбираться.
Странный баг в SendIt (квиз+загрузка файлов) 2
19 марта 2026, 15:28
Николай, прежде всего — вы молодец.
А про кеширование — можно пойти по правилу Парето.
То есть дать возможность закешировать самое частое — это ...
mFilter 1.2.0 - улучшенное кеширование и скорость 2
15 марта 2026, 20:35
Minishop2 это завершенная история. Архив. Крайне сомневаюсь, что в него будут добавляться какие то изменения. Это просто некому делать. Заинтересованн...
Порядок значений опций товара 10
И еще, не проверял в новых версиях XPDO, но в текущей такое есть (xPDO 2.3.0-pl (July 15, 2014)):
если мы пропишем несколько полей с primary key в одном объекте (тип объекта не важен), то AUTO INCREMENT параметр не добавляется ни в одно поле, какой бы вы generator не прописывали. В результате будем всегда получать error.
Что собственно и происходит при удалении через remove() или если мы используем процессор от modObjectRemoveProcessor. А проблема в следующем: так как во всех случаях прежде чем удалить объект, его нужно получить через getObject('msSfiltersProduct', $criteria) Где $criteria либо массив данных, если обратились через процессор, либо строка или целое. При этом вызове у нас вызывается $this->parseConditions($conditions, $conjunction); Вот этот метод и гадит нам. Дело в том что условие строиться на основе primary key и его типа, приведу вырезанный кусок данного метода: Видно, что проверки на тип ключа как массива нет и $result будет всегда == NULL, и getObject вернет нам первый объект. Что же делать… как вариант не указывать несколько primary key, у всех кроме одного нужно указывать index=«index». В самом объекте указать индекс может выглядеть так:
Возможно я и ошибся где-то хз, пусть найдет добрый человек и поправит меня если я не прав.