izrael написал: Иван Малышин , кто пишет условия к заданиям? Вопрос риторический.Неужели нельзя доступным стилем описать. После первого экзамена остался неприятный осадок из-за мутных условий к заданиям, так и на втором та же фигня.Блин, ребята, наймите филолога... Вы ж за экзамены бабло рубите.
Чтобы вопрос из риторического перешел в практический и помог что-то реально изменить - нужна конкретика. Приведите пример по одному заданиию в формате: - Вот "мутное" описание сейчас: "ла-ла-ла..." - Вот "правильное филологическое" описание как надо: "ла-ла-ла..."
izrael написал: Задание [ex2-25] Создание комплексного компонента «Моя фотогалерея». Не могу понять как корректно решать. Т.е. нужно на индексной странице раздела /ex2/complexcomponent/ разместить компонент: "bitrix:complexcomp.exam-materials", так?
Да
Цитата
izrael написал: И что за файл такой components из условия Общих требований этого же задания: "Необходимо реализовать логику в файле components и вывод в шаблоне по заданию"? Может component? Мелочь, а не приятно.
Спасибо за конкретику, согласен что в и мелочах должно быть все хорошо. Исправили.
Иван Малышин [ex2-104] Сбор жалоб на новости, на AJAX
Вопрос по работе без AJAX. В задании необходимо сохранить жалобу в инфоблок, а затем возле заголовка вывести id полученной жалобы. Если мы обрабатываем запросы в component_epilog.php, то в шаблон компонента мы ничего передать уже не можем. Если обрабатывать запрос в result_modifier.php, то придется заставить компонент отработать без кэша. В задании явно сказано
Цитата
Обработчик запроса, будь это обычный режим или AJAX должен быть один и находиться в типовых файлах шаблона компонента
Значит ли это, что использовании component_epilog.php не подходит для решения этой задачи, и необходимо использовать некэшируемое обращение к компоненту (при работе без AJAX)?
Пока писал вопрос, кажется понял, что делаю не так. В условии
Цитата
В существующем разделе Новости (/news/), на детальном просмотре новости, после наименования, добавить ссылку «пожаловаться!»
"после наименования" следует понимать как "после заголовка страницы"?
Константин Селиверстов написал: Вопрос по работе без AJAX. В задании необходимо сохранить жалобу в инфоблок, а затем возле заголовка вывести id полученной жалобы. Если мы обрабатываем запросы в component_epilog.php, то в шаблон компонента мы ничего передать уже не можем.
Без ajax вы можете "передать выше" нужное значение, отложенные функции. Да и редирект можно сделать после успешной обработки запроса
Добрый день. Задание [ex2-102] -- Вывести переключатель в правой колонке сайта, в блоке Choose language с помощью соответствующего компонента. Перерыл последнюю версию Битрикс - данного компонента не нашел. Если написать свой компонент с помощь метода CLanguage::GetLangSwitcherArray() экзамен будет не здан? -- Изменить типовой шаблон компонента, сделать выпадающий список, текст значений в котором - код языка (en, ru). -- это подразумевает что он все таки есть!!!
нужно ли здесь указывать SetResultCacheKeys если в arResult всего один параметр который используется для вывода в цикле в шаблоне?
Таки настаиваю на ответе, ибо завалил второй раз экзамен на этом задании.
В первый раз не указал массив SetResultCacheKeys, тк в $arResult был всего один параметр, во второй раз указал полезные данные, которые, могли бы использоваться в некешируемой части (в комоненте правда они использовались только в шаблоне).
Остаётся последний вариант, указать пустой массив чтобы $arResult не кешировалось совсем?
Виктор Семенцов, суть экзамена, чтобы бы в процессе подготовки обрели нужные компетенции. Готовый ответ ответ на задание - противоречит этой сути. Вы хотите компетенцию реальную получить, или "бумажку"? Вам же нужно будет при разработке ваших проектов правильно определять что в кеш поместить и как это делать.
Во втором демо билете наверное ошибка по заданию, скорее всего оно должно быть в другом билете
Цитата
4. [ex2-82] Добавить отображение данных в шаблон сайта
Реализовать отображение данных в шаблоне сайта, при нахождении на странице с простым компонентом, созданным ранее. В левую колонку вынести максимальную и минимальную цену, по полученным в компоненте товарам.
Но во втором билете не было такого задания, где был бы создан компонент, где фигурировали цены и товары
Иван Малышин написал: Виктор Семенцов , суть экзамена, чтобы бы в процессе подготовки обрели нужные компетенции. Готовый ответ ответ на задание - противоречит этой сути. Вы хотите компетенцию реальную получить, или "бумажку"? Вам же нужно будет при разработке ваших проектов правильно определять что в кеш поместить и как это делать.
Немного напрягает, что нигде, ни в курсах, ни в документации не нашёл примеров с вызовом пустого массива SetResultCacheKeys(array()); или SetResultCacheKeys(false); или просто SetResultCacheKeys(); Очевидный же пример, убрать кеширование arResult совсем Может это обучающий момент, но блин, пришлось в ядро лезть смотреть что метод делает.. Ещё больше напрягает, что когда спрашиваешь людей уже сдавших экзамен, они не могут ответить на вопрос что туда писать (двоих спрашивал), начинаешь сомневаться, а то ли вообще делаешь, может быть есть специальный метод, который обнуляет arResultCacheKeys, но везде про SetResultCacheKeys и как плохо в него добавлять DETAIL_TEXT
Иван Фролов написал: Можно ли уточнить по поводу добавления в простой компонент Эрмитажа? В задании сказано добавить эрмитаж для продуктов, но реализованный простой компонент вполне предполагает дублирование продуктов в своем шаблоне, а от того просто навесить эрмитаж "в лоб" на все продукты не получится (js не переваривает дублирования id и немножко сходит сума). Кажется вполне логичным вешать эрмитаж на первое вхождение продукта, пропуская все последующие дубляжи, считается ли это верным решением или же необходимо "рыть" глубже?
Спасибо, это хорошее уточнение. В принципе можно согласиться и на вешать на первое появление, в рамках экзамена. Но представим что это реальный проект, есть дублирование (вполне реальная ситуация), пользователю будет на ясно, почему где-то есть конторл, а где-то нет. Давайте подумаем над более красивым решением?
Как вариант - задать всем выводимым элементам свой ID, чтобы не было дублирования, что-то вроде поля CONTROL_ID и на него все вешать. Это будет хорошим решением?
[ex2-107] Автоматический сброс кеша в компоненте при изменении элемента информационного блока «Услуги». Что то не могу понять как решается задание, в какую сторону копать?
Возникли вопросы по заданию [ex2-94] Супер инструмент SEO специалиста.
какие принципиальные моменты нужно учесть, чтобы задание считалось корректно выполненным: 1) нужно ли использовать собственный компонент? 2) нужно ли кешировать данные и если да, какое время жизни кеша имеет смысл установить? 3) нужно ли использовать обработчик события на изменение элемента ИБ для сброса кеша?
Мария Недоспасова написала: Возникли вопросы по заданию [ex2-94] Супер инструмент SEO специалиста.
3) нужно использовать обработчик события
Компоненты тут не нужны, а вообще как я понимаю схема такая: подходящий обработчик события и в нем использование отложенных функций для установки мета-тегов (в случае если найдется элемент ИБлока)
PS: Начинающим разработчикам легче сдавать эти экзамены, так как они стараются лишний раз не усложнять себе задачу)) Если не просят компонент то скорее всего его от вас и не ждут.
Имеет ли значение шаблон сайта при подготовке ко второму экзамену? Просто в общих условиях сказано Решения размещать в папке local, создать копию шаблона furniture_pale-blue в local, Шаблоны компонентов размещать в этом шаблоне. А я собственно установил на тестовом сервере bitrix с шаблоном furniture_red, Хотелось бы иметь возможность скачать шаблон furniture_pale-blue
Евгений Козин написал: Имеет ли значение шаблон сайта при подготовке ко второму экзамену?Просто в общих условиях сказано Решения размещать в папке local, создать копию шаблона furniture_pale-blue в local, Шаблоны компонентов размещать в этом шаблоне.А я собственно установил на тестовом сервере bitrix с шаблоном furniture_red, Хотелось бы иметь возможность скачать шаблон furniture_pale-blue
Не имеет, это же всего лишь оттенок. Установленное решение - имеет смысл, задания опираются на конкретные данные.
Только что закончил сдавать, сделал все задания кроме последнего по причине нехватки времени. Почему в документации указано https://dev.1c-bitrix.ru/api_help/main/reference/ceventlog/add.php то что это не статический метод когда он как раз таки статический. Я банально из-за того что доверился доке потерял час времени. Есть шанс сдать? Я бы и в последнем задании пути у комплексного компонента поправить бы мог, но действительно очень много времени потерял.
Евгений Козин, спасибо за обратную связь, исправим описание. Но, там же пример вызова правильный есть. Формально для прохождения нужно решить верно все задания. По вашей конкретной ситуации - напишу вам на почту.