Наумов Алексей

Наумов Алексей

Был в сети 28 июля 2026, 14:21
Заказы принимаю
1. Вариант «на коленке»:
Каждый «Рейтинг» — это отдельный ресурс (страница).
«Добавлять определенных или всех пользователей» — на ваше усмотрение, хоть TV поле, где перечисляются пользователи. Далее проверяем, есть ли пользователь в этом TV.
Само голосование… ну хоть через xlike, да. Можно от тикетс, можно даже easyComm заюзать.

2. Вариант «серьезный».
Пишем свой компонент с нужными функциями.
Ну а get-процессор то данные верные отдает, полные? В консоли браузера посмотрите запрос этот.

При открытии объекта на редактирование должно быть:
1. Основной запрос, в котором в числе всех данных объекта придет значение этого поля.
2. Отдельный запрос к процессору getlist, в который уйдет 2 параметра: id, combo=1, оттуда придет ответ с одной единственной строкой, из которой title и подставится.

Если в п.2 приходят много строк, то не хватает условия в процессоре, чтобы ограничить выборку:
$id = $this->getProperty('id');
if (!empty($id)) {
        $c->where(array('id' => $id));
}
При отображении окна (формы) редактирования идет запрос к get процессору (типа mgr/some-object/get), значение поля subject вообще приходит? Может его нет, вот и в комбобокс не подставляется ничего?

А так сравнил со своим кодом, увидел 2 отличия:
1. Вот здесь
baseParams: {
                action: 'mgr/settings/getlist',
	        combo: true,
        }
у меня еще добавляется параметр
id: config.value
2. Ну и в процессоре есть условие, чтобы лишние данные не гонять:
public function prepareQueryBeforeCount(xPDOQuery $c) {
        if ($this->getProperty('combo')) {
            $c->select('id, name, title');
        }
        ....
Может это некая проверка на cms или попытка взлома роботами?
Типа они пытаются на некую страницу авторизации /admin/ войти с логином паролем admin, а у вас такой нет, вот и обрабатывается 404.
Посмотрите в логах веб сервера запросы в этот момент времени.
Я к тому, чтобы максимально быстро выпустить некое решение рабочее.
Боюсь большой объем работы просто застопорит все.
Кстати, если писать с нуля, ну по факту будут написаны аналоги процессоров, просто с другими «что смущает», которые будут подогнаны именно под это апи.
Думаю, что использовать стоит, по крайней мере в тех местах, где они хорошо отрабатывают.
Просто для того, чтобы максимально быстро достичь некоего рабочего этапа.
Если процессор позволяет выполнить действие — пусть работает.
А если не позволяет, значит идти другим путем, писать самому это действие.
Да вот и не знаю, какую сортировку писать…
Даже сформулировать тяжело. Вероятнее всего да, нужно самому сформировать список id Объектов, а потом уже их сами и выбирать через pdoResources или что удобнее.
Смотря сколько у вас файлов…
Как вариант, можно через произвольную библиотеку прочитать текстовое содержимое файлов и всем массивом засунуть в скрытые ресурсы (один файл — один ресурс). Эти ресурсы и будет индексировать SimpleSearch (но лучше mSearch2). А при выводе результата поиска подменять ссылку на ресурс ссылкой на файл.