Nano.Karmabot.chat
Cool! webinmd got +1 from Extrabash. 73 karma in total.
Semyon
Всем дня доброго. Подскажите, у меня такая проблема. Я через pdoFetch собираю запрос и в select хочу определить поле weight(вес строки из поиска). У меня есть массив $founded, где ключ id ресурса а значение вес, по которому нужно отсортировать $mSearch2 = new mSearch2($modx,$scriptProperties); $founded = $mSearch2->Search('Беннет'); $scriptProperties['resources'] = implode(',',array_keys($founded)); $weights = implode(',',$founded); $select['weight'] = "ELT(FIELD(assembly.id, {$scriptProperties['resources']}),{$weights}) as weight"; //$select['weight'] = " as weight"; $sortby["weight"] = 'DESC'; Проблема заключается в том что xpdo сам подставляет знак туда, куда не нужно. Функция FIELD, которая должна вернуть индекс поля, заполняется ок, просто числа. А вот после запятой идут почему то числа заключённые в и sql считает их переменными
Semyon
скрин собранного sql
Semyon
кратко - xpdo сам подставляет `, из-за чего у меня жопа в запросе получается)
Алексей
кратко - xpdo сам подставляет `, из-за чего у меня жопа в запросе получается)
Не сам. у вас запятая стоит между {$scriptProperties['resources']} ), {$weights} я так понимаю что вы хотите склеить 2 строки?
Maxim
вот так ) http://joxi.ru/nAyxEN7ug1zp62
А о чем речь? Что-то упустил...
Евгений
Я гуляю, не до вас
куда ты там гуляешь? в степь?
Semyon
Не сам. у вас запятая стоит между {$scriptProperties['resources']} ), {$weights} я так понимаю что вы хотите склеить 2 строки?
нет, всё верно. Результат функции FIELD вернёт индекс на котором расположен вес ресурса, индекс подставится должен в функцию ELT,где уже будет находиться само значение веса
Николай
Алексей
нет, всё верно. Результат функции FIELD вернёт индекс на котором расположен вес ресурса, индекс подставится должен в функцию ELT,где уже будет находиться само значение веса
А ну тогда могу предложить переписать чутка: $select['weight'] = "ELT(FIELD(assembly.id, {$scriptProperties['resources']})," . $weights . ") as weight"; Если это тоже не сработает, то увы...
Евгений
В Новосибирске
депортировали из казахстана?
Николай
депортировали из казахстана?
Экспортировали для передачи опыта
Semyon
ну и проверьте как подставляется все print($select['weight'])
Подставляется всё ок, xpdo мутит грязь мне)
Евгений
Semyon
ну и проверьте как подставляется все print($select['weight'])
Слушай а я могу как-то сначала вычислить индекс, а потом его использовать как переменную?
Алексей
Слушай а я могу как-то сначала вычислить индекс, а потом его использовать как переменную?
х.з. никогда не писал кастомные запросы для msearch и тем более не использовал функцию ELT
Николай
а, импортозамещение
Паралельный импорт 😂😂
Semyon
Да у меня проблема в том что нужно отсортировать полученные результаты ещё по дате добавления или по лайкам. Суть в том что mSearch2 сделан тупо через resources. И он просто в порядке идишников в resources выводит. Но при добавлении sortby вес никак не учитывается и всё пока смысл поиска и весов
Алексей
вообще почему в select вызывается и ELT и FIELD они ж вроде должны быть в сортировке... не?
Алексей
и select - Это выбор полей для вывода, но ни как не для сортировки
Semyon
вообще почему в select вызывается и ELT и FIELD они ж вроде должны быть в сортировке... не?
если к примеру мне изначально определить пременную searchIndex (результат FIELD). А в ORDER BY использовать ELT, sql почему то начинает игнорировать сортировку)
Semyon
ща гляну
Roman
Парни как в htaccess сделать редирект такой: если есть .html/ то заменять на / eсли .html то заменять на /
Roman
Типа такого что-то: RewriteRule ^(.*)\.html\/$ /$1/$2 [L,R=301] RewriteRule ^(.*)\.html$ $1/ [L,R=301]
Roman
просто есть вариант такой /catalog.html /catalog.html/products.html
Anonymous
Я удалил контекст. И заметил, что кол-во товаров осталось прежним. SELECT COUNT(*) FROM modx_ms2_products Получается, при удалении контекста весь мусор в БД остается? Я уже много контекстов поудалял. Как теперь очистить БД от мусора?
Anonymous
А количество ресурсов уменьшилось??
Да. Кол-во ресурсов уменьшается. Кол-во товаров - нет.
Anonymous
SELECT COUNT(*) FROM modx_site_content
Артур
Да. Кол-во ресурсов уменьшается. Кол-во товаров - нет.
А контексты удалял как через контекстное меню или другим способом?
Anonymous
ПКМ - удалить контекст
Артур
ПКМ - удалить контекст
Занятно. @biz87 что ты об этом думаешь?
Артур
ПКМ - удалить контекст
Какая верcия minishop?
Anonymous
Нужно писать код, который в цикле пройдет от первого id ресурса до самого последнего. Постарается найти ресурс с таким id в базе. Если не найдет, то создаст и присвоит ему такой id. После чего вызовет процессор для удаления ресурса. Процессор удалит все зависимости. Если найдет, то ничего делать не будет, т.к. ресурс есть, и зависимости не являются мусором.
Anonymous
Либо самому выискивать во всех таблицах мусорные зависимости. И удалять их. Но это сложнее. И можно что-то пропустить. Или что-то сломать.
Артур
ПКМ - удалить контекст
Тебе не повезло, самый информированный разраб гуляет. Но моему так быть не должно, так как msproduct наследует modresource вроде как.
Anonymous
https://modx.pro/users
Артур
А как же Павел Кристалл, Иван Бочкарев, Василий Наумкин, Алексей Смирнов...
Павел покинул чат, по-моему. Василия тут кажись нет и не было. Иван админ он плотно разработкой minishop не занимается. Алексей много знает, но насколько глубоко он погружался в код ms2 я не знаю. А вот Николай занимается поддержкой и он же разрабатывает minishop3
Anonymous
Ааа
Артур
Ааа
Но тебе от этого не легче. Тебя надо порядок наводить. И ты совершенно верно расписал алгоритм.
Евгений
https://modx.pro/users
всем просто немножко пофиг на твою проблему))
Артур
всем просто немножко пофиг на твою проблему))
Ты жесток, надо мягче с людями, а ты прям в лоб всю правду)))
Евгений
ну и причем тут минишоп и удаление ресурса? если удалять товар, то да, тут минишоп, а в обратную сторону модх не вкурсе кто там че расширил
Евгений
правишльнее было бы сперва удалить каталог и потом контекст
Евгений
но раз так, то уже скриптом
Евгений
Ну по идее при удалении контекста удаляются ресурсы, а ресурсы связаны с ms2_products не?
ресурсы не связаны с товарами, товары связаны с ресурсами
Евгений
я так это понимаю
Anonymous
Всех приветствую стоя
Евгений
Ну по идее при удалении контекста удаляются ресурсы, а ресурсы связаны с ms2_products не?
хотя при вызове процессора resource/update - обновляются и товары
Евгений
Коля погуляет и расскажет
Артур
ресурсы не связаны с товарами, товары связаны с ресурсами
Ну при удалении ресурса, если это товар, удаляются записи и из site_content и из ms2_products, по идее при любом варианте удаления ресурса, если он товар, так должно быть. Но это неточно.
Евгений
а при удалении товары ты тусуешь msProduct - видимо контекст не вкурсе о msProduct
Евгений
тусует = удаляет
Anonymous
Поделюсь курсами по торговле, на которых сам учился, бесплатно, в лс!
Евгений
Ладно, не будем спорить)))
не работает и ладно))
Артур
не работает и ладно))
Да, тем более, Коля гуляет, а мы бессильны что-то исправить)))
Евгений
Да, тем более, Коля гуляет, а мы бессильны что-то исправить)))
https://github.com/modxcms/revolution/blob/2.x/core/model/modx/processors/context/remove.class.php#L51
Евгений
тут сам модх удаляет не через процессор ресурсы, поэтому может не срабатывать удаление msProduct
Степан
народ где-то в аналах была ссылка на совместимые расширения с MODX3
Степан
можете продублировать?
Евгений
https://sitedash.app/extras
Артур
тут сам модх удаляет не через процессор ресурсы, поэтому может не срабатывать удаление msProduct
А схема объекта modresource при установке minishop не меняется? Там дополнительная связь не прописывается?
Степан
pdoTools все еще не?
Евгений
pdoTools все еще не?
это старый список