Готовлюсь к экзамену 2 столкнулся с проблемой в задании ex2-97 (Демо-билет 2 ). Не выходит добиться нужной фильтрации.
Как необходимо отфильтровать элементы
что получается в итоге (из-за множественного свойства)
На обоих скриншотах зеленым указаны те элементы, которые должны попасть в выборку, красным - те элементы, которые в неё попасть не должны, но на втором скриншоте видно, что один элемент туда попал. Будет ли правильным решением с точки зрения экзамена перевести свойства в отдельные таблицы или же реализовать подобный функционал можно проще?
Весь интернет облазил, ответ на свой вопрос найти не удалось.
Или может быть я неправильно понял трактовку задания и задача выборки выполнена верно? Больше всего пункт
"Новости, в которых в авторстве присутствует текущий пользователь, не выводятся у других авторов." меня смущает, как раз под него новость с ID 35 не подходит.
Или правильным решением с точки зрения экзамена будет сделать две выборки, в первой собрать ID новостей, у которых в авторстве указан текущий пользователь, во второй исключить новости с этими ID?
Заранее спасибо за ответ.
Текущий код:
Как необходимо отфильтровать элементы
что получается в итоге (из-за множественного свойства)
На обоих скриншотах зеленым указаны те элементы, которые должны попасть в выборку, красным - те элементы, которые в неё попасть не должны, но на втором скриншоте видно, что один элемент туда попал. Будет ли правильным решением с точки зрения экзамена перевести свойства в отдельные таблицы или же реализовать подобный функционал можно проще?
Весь интернет облазил, ответ на свой вопрос найти не удалось.
Или может быть я неправильно понял трактовку задания и задача выборки выполнена верно? Больше всего пункт
"Новости, в которых в авторстве присутствует текущий пользователь, не выводятся у других авторов." меня смущает, как раз под него новость с ID 35 не подходит.
Или правильным решением с точки зрения экзамена будет сделать две выборки, в первой собрать ID новостей, у которых в авторстве указан текущий пользователь, во второй исключить новости с этими ID?
Заранее спасибо за ответ.
Текущий код:
| Код |
|---|
//iblock elements $arOrder = array ( "SORT" => "ASC" ); $arGroupBy = false; $arNavStartParams = false; $arSelectFields = array ( "ID", "IBLOCK_ID", "NAME", "PROPERTY_" . $arParams["PROPERTY_AUTHOR_CODE"] // код множественного свойства инфоблока - привязка к пользователям ); $arFilter = array ( "IBLOCK_ID" => $arParams["NEWS_IBLOCK_ID"], "ACTIVE" => "Y", array( "LOGIC" => "AND", "PROPERTY_" . $arParams["PROPERTY_AUTHOR_CODE"] => $curGroupUsers, // свойство == [3,4] "!PROPERTY_" . $arParams["PROPERTY_AUTHOR_CODE"] => $userid, // свойство != [1] ) ); $arElements = array(); $rsElements = CIBlockElement::GetList( $arOrder, $arFilter, $arGroupBy, $arNavStartParams, $arSelectFields ); |