Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Связь инфоблоков

00 голосов
3
Добрый день.
Скажите пожалуйста, можно ли реализовать с помощью вашей системы такую структуру?
Необходимо иметь каталог у которого есть возможность к каждой позиции прописать неограниченное количество фотографий. Т.е. на сколько я понял идеологию вашей системы, тут необходимо иметь два инфоблока (каталог и фотографии) с со связью?
спросил 14 Янв, 14 от MetallMan (100 баллов)

3 Ответы

00 голосов
Нет, это будет один инфоблок с созданным свойством типа "файл". Оно и позволяет загружать необходимое количество фотографий.
ответил 14 Янв, 14 от Макс (220 баллов)
00 голосов
Действительно, связь между инфо-блоками является очень важным и интересным механизмом реализации сложных каталогизаций и реализации оригинальных представлений.

Сегодня такая реализация обычно выполняется за счет настройки карточки представления инфо-блока.

Инфоблок№1 - главный, например статьи журнала или новости
Инфоблок№2 - вспомогательная каталогизация, например: Бизнес, Техника, Отдых и т.п.
Инфоблок№3 - Каталог схожих тематик, например, страны, люди, персоналии, известные темы или темины и т.п. Потом по ним удобно находить будет связанные статьи по тематике и показывать внизу последние 3-5 штук.

Соответственно инфоблоки 2 и 3 можно как угодно пополнять, описывать, наполнять своими свойствами, распределять права кто имеет право редактировать эти инфо-блоки и т.д.

В Инфоблоке№1 создается два свойства целого типа.
Одно будет хранить выбранный ID из Инфоблока№2, другое будет хранить выбранные ID из Инфоблока№3. Если необходимо сделать множественный выбор - то свойства целого типа тоже заводятся множественные.

Таким образом, можно создавать любое число независимы каталогизаций, связывать инфо-блоки между собой и строить любые бизнес модели.

В дальнейшем с инфоблоками уже работа идет через обычный API продукта.

В одном из проектов, было, например, предложено сделать единый каталог моделей Телефонов как информационную часть, сделать инфо-блок предложений по этим телефонам от разных компаний или отделений этой компании в разных городах. Таким образом, пользователи Интернет магазина смогли выбирать телефон, а потом город и фирму, где они хотят его купить.

Сейчас готовится к выпуску обновление модуля инфо-блоков, которое, если так можно сказать, узаконит связи между инфоблоками. Т.е. при выборе свойств инфоблока появится отдельный тип - ссылки на другие инфоблоки.
ответил 29 Апр, 14 от oriona (180 баллов)
00 голосов
в новой версии инфоблоков обещают сделать такой тип свойства "ссылка на инфоблок". Но пока это можно реализовать добавив новое множественное свойство типа "список". Для того, чтобы в админской панели появился этот список (множественный выбор) с фотографиями из другого инфоблока Вам необходимо сделать собственный "Файл-шаблон редактирования элемента после сохранения". Как его сделать я описал здесь.
В этом шалобне находим цикл, который отвечает за вывод свойств.
и пишем примерно так:
Код
if($prop_fields["CODE"] == "PHOTO")
{
  echo "<select name=\"PROP[".$prop_fields["ID"]."][]\" class=\"typeselect\" size=\"\" multiple>";

  $items = GetIBlockElementListEx("gallery","photos",Array(),Array("SORT"=>"ASC"));
  while($arItem = $items->GetNext())

  echo "<option value=\"".$arItem["ID"]."\"".(in_array($arItem["ID"],$prop_values)?" selected":"").">".$arItem["NAME"]."</option>";

  echo "</select>";
}
else
{
  _ShowPropertyField('PROP['.$prop_fields["ID"].']', $prop_fields, $prop_values, ((!$bVarsFromForm) && ($ID<=0)), $bVarsFromForm);
}
ответил 24 Авг, 14 от ZOOL (260 баллов)

Похожие вопросы

0 голосов
4 ответов
0 голосов
1 ответ
спросил 15 Ноя, 13 от Misty (440 баллов)
0 голосов
8 ответов
0 голосов
3 ответов
спросил 13 Май, 13 от XIDAN (620 баллов)
0 голосов
0 ответов