Всего 125 018 комментариев

SYAN
18 апреля 2025, 00:03
0
Не работает парсинг с vk.com, vkvideo.ru
Aleksandr Huz
17 апреля 2025, 22:00
+1
PageBlocks может и не плох но как же уже достал это зоопарк фреймворков :-)
PageBlocks имеет 2 режима разработки:
  • Режим менеджера — можно делать тоже самое, только клацать в админке
  • Режим разработчика — управлять всем через файлы, но нужно немного поучиться, зато получаем чистый и управляемый код, который можно хранить на гитхабе
Как говорится, плох тот разработчик, который не учится новому!
Дмитрий
17 апреля 2025, 21:35
0
Действительно! Самого главного я и не обозначил! Спасибо! Поправлю заголовок.
Речь идет именно о панели менеджера и возможности управления заказами.
В модалке без условно выводится и с этим нет сложностей, вопрос в том, что в данном контексте требуется перечень товаров выводить в общую таблицу.
Ну т.е. на равне с комментарием к заказу, датой заказа и прочими данными, требуется вывести перечень заказов.
Александр Туниеков
17 апреля 2025, 20:57
0
Block::make('Services')
    ->fields([
        // Создаем поле с типом таблица
        Field::make('Services')
            ->type('table')
            ->fields([
Учить еще один язык програмирования, который типа облегчает контроль над html и css. Как говориться плох тот разработчик который не написал свой фрейворк.
PageBlocks может и не плох но как же уже достал это зоопарк фреймворков :-)
Александр Туниеков
17 апреля 2025, 20:51
0
со сложными блоками ChatGPT справляется плохо
А где это вы нейросеть используете? Встроенно в pageblock или вы програмируете с нейросетью?
Артур Шевченко
17 апреля 2025, 17:49
0
Очевидно ты используешь источник файлов, поэтому в админке путь прописан от источника, хочешь полный путь, откажись от источника файлов.
Дима Касаткин
17 апреля 2025, 15:08
0
Привет, Henk. Спасибо за ответ! В посте по ссылке меня больше всего заинтересовала фраза «мы интегрировали AI в медиа-менеджер, чтобы значительно упростить управление изображениями» (c тегированием и пр.), но я не нашел ссылок на обновленные версии. Это обновления для ваших внутренних-продуктов, или MODX media manager получит обновление для категоризации с помощью AI?

В последней версии MODX 3.1.2 я не вижу даже тегов в mediamanager, не говоря уже о том, что они каким-то образом обновляются с помощью искусственного интеллекта.

Как и где можно потрогать руками хотя бы какие-то результаты хакатона?

— Hi @Henk Everts, thx for answer! In linked post most intesr for me «we integrated AI into the media manager to make managing existing images a whole lot easier» (with tags, etc.) — but i not found links for updated versions. This updates for you intranet products, or MODX media manager will get AI categorize update?

In latest MODX 3.1.2 version i cant see even tags in mediamanager, not to mention that they are somehow updated with the help of AI.

Where or how we can test any hakathon results?

P.S. Еranslated manually for train my english :) sorry for mistakes, may be
Дима
17 апреля 2025, 13:17
0
в preg_match проверка проходит, и туда 100% приходит url
Артур Шевченко
16 апреля 2025, 22:39
+2
Я не видел весь твой код, но думаю что $c это объект класса xPDOQuery, который является конструктором SQL-запросов. А $c->leftJoin(), $c->select() это всё вызовы методов конструктора запросов. После все манипуляций получается обычный SQL, который и отправляется в БД.
Если упрощать, то когда ты делаешь leftJoin одна таблица ставится рядом с другой так, чтобы совпали поля, которые ты указываешь в условии ON (или передаешь третьим параметром в метод leftJoin). Таким образом получается новая таблица, но с бОльшим количеством столбцов, при этом количество строк будет таким же как и в первой таблице. Например, если у тебя в первой таблице одна запись, а во второй две, в итоговой таблице будет одна запись. Именно поэтому ты не можешь просто взять и присоединить все товары, тебе нужно сгруппировать их по id заказа, упаковать их в одну строку и только потом присоединять. вот так можно получить товары для заказа с id = 594
<?php
$q = $this->modx->newQuery('msOrder');
$q->leftJoin('msOrderProduct', 'Product', 'msOrder.id=Product.order_id');
$select = <<<EOD
        CONCAT(
                '[', GROUP_CONCAT(
                    DISTINCT CONCAT(
                        '{"name":"', Product.name, '", "count":"', Product.count, '", "price":"', Product.price, '"}'
                    )
                    SEPARATOR ','
                ), ']'
            )
EOD;
$q->select('msOrder.id as order_id, :products AS products');
$q->where(['msOrder.id' => 594]);
$q->groupby('msOrder.id');
$q->prepare();
$sql = $q->toSQL();
$sql = str_replace(':products', $select,$sql);
$stmt = $modx->prepare($sql);
if($stmt->execute()){
    $result = $stmt->fetchAll(PDO::FETCH_KEY_PAIR);
    print_r($result);
}
Alexey
16 апреля 2025, 22:04
0
Самое главное: нет конкретики…

Что за список товаров? Если в админке — он и так выводится в списке заказов, когда модалку открываешь. Если в публичной части сайта, к примеру, в ЛК, то зачем тащить процессор? Не проще ли составить нужный запрос в сниппете и в зависимости от id заказа цеплять товары? Ну, плюс ещё проверять принадлежность заказа к юзеру.
Aleksandr Huz
16 апреля 2025, 21:10
0
Зачем нужен пункт 1 и 2? Ведь это решается стандартными полями ресурса в MODX?
Для полного контроля над страницами и логикой отображения.
Сергей Сергеевич
16 апреля 2025, 19:53
+2
Инструкция! Вот чего не хватало, спасибо!!!
Зачем нужен пункт 1 и 2? Ведь это решается стандартными полями ресурса в MODX?
Сергей
16 апреля 2025, 15:03
0
У меня css корректно сжимаются, но js если даже 1 файл добавил, то сразу в 500 сайт падает, не понимаю в чем проблема, попробую попробую конечно логи сервера посмотреть, но не понятно в чем причина. Странно, но на компонент нет документации ни какой. В интернете тоже нет особо комментариев.
Сергей
16 апреля 2025, 14:31
0
копал и накопал что в пути не хватает папки img, т.е. путь должен быть espkrf.ru/vendor/ img/ /files/reports/reglament-documents/osnovnyie-trebovaniya-k-ekspertam-espk.pdf, отсюда вопрос, как это исправить?
Дмитрий
16 апреля 2025, 13:16
0
А в логах следующее:
(ERROR @ /home/c/cz42644/test-iflower/public_html/core/xpdo/xpdo.class.php: 644) Could not load class: ms2_order_products from mysql.ms2_order_products.
(ERROR @ /home/c/cz42644/test-iflower/public_html/core/xpdo/xpdo.class.php: 644) Could not load class: msorderProducts from mysql.msorderproducts.
[2025-04-13 15:04:21] (ERROR @ /home/c/cz42644/test-iflower/public_html/core/xpdo/xpdo.class.php: 1827) No foreign key definition for parentClass: msOrder using relation alias: Product

Каждая ошибка повторяется по нескольку раз, но это я так понимаю, идет несколько обращений к бд и каждое порождает одну и тужу ошибку.
Дмитрий
16 апреля 2025, 13:06
0
Большое спасибо за ответ, но к сожалению я мало чего понял из него… Я даже не до конца понимаю, что такое фронт… Это фронт-енд? Т.е. панель администрирования? Или отработка скриптов?
Как я это себе вижу=) А ты меня поправь.
Те данные, что присутствуют в таблице с заказами, берутся из таблицы _ms2_orders, у меня уже получилось расширить эту таблицу данными из таблицы _ms2_order_addresses, это выглядело сложно, но я справился (скажу даже, что я не менял исходники, а сделал красиво, именно расширив своими файлами), т.к. нужный запрос уже присутствовал в процессоре (фильтрация заказов частично делается и по этой таблице). Я так понимаю, что за это отвечает эта часть кода $c->leftJoin('msOrderAddress', 'Address'); Т.е. дальше, я просто немного изменил SQL-запрос добавив выборку нужных полей.
Сейчас, мне нужно в запрос подключить еще одну таблицу, а именно _ms2_order_products, причем еще нужно сделать сортировку по id заказа, т.к. товаров в одном заказе может быть много.
Не получится ли сделать подобным образом?
или нужно идти по пути, который ты предложил?

Что такое msOrderAddress в данном случае $c->leftJoin('msOrderAddress', 'Address');? А самое главное откуда оно берется, это же не таблица в БД, а объект, класс или что-то еще? Где можно найти рождение msOrderAddress этого? Выше написанная строчка кода делает алиас в запросе, и при дальнейшем обращении я уже могу обращаться к таблице _ms2_order_addresses как Address.
SYAN
16 апреля 2025, 11:39
0
Не выводятся товары привязанные к данной категории, как дополнительной
В админке они отображаются в обеих категориях, опубликованы, кэши сняты
Showlog также их не видит

{'!msProducts' | snippet : [
            'parents' => $_modx->resource.id,
            ]}
MODX 3.1.2-pl
MiniShop3 — 1.0.0-alpha