Перейти к содержанию

Как в шаблоне базы данных вывести информацию из связанной базы данных?


vinegredz
 Поделиться

Рекомендуемые сообщения

Здравствуйте!

Есть база фильмов (классическая для IP Content).
В этой базе есть поле "Актеры фильма" типа "Связь с базой данных".

Есть база актеров (классическая для IP Content).
В этой базе есть поле "Фильмы, в которым участвовал" типа "Связь с базой данных".

Задача которую нужно решить:
В шаблоне record для базы данных с фильмами вывести информацию об актерах. Структура верстки примерно такая:

<div class='MovieRecord'>
  
  <h1>{$record->_title}</h1>
  
  <!--Тут хочу вывести Grid с актерами, которые учавствуют в фильме-->
  <ul class='ipsGrid'>
    <li class='ipsGrid_span4'>
      <h2>{$actor}</h2>
      <span>{$actorage}</span>
    </li>
  </ul>
  
</div>

По сути, я хочу понять как мне подставлять данные из связанной записи на странице.

Ссылка на комментарий
Поделиться на другие сайты

При создании поля типа Связь с базой данных есть опция, которая называется Cross link records?, если её активировать, в базе данных будут автоматически появляться записи:

Снимок экрана 2017-06-15 в 10.53.44.png

Ссылка на комментарий
Поделиться на другие сайты

Спасибо за ответ. Об этой функции знаю. Проблема как управлять шаблоном вывода данных из связанной записи.

Я знаю как изменить глобально шаблон вывода, но не пойму как управлять шаблонов вывода раздельно для каждого поля и как вывести их в шаблон.

Посмотрите, пожалуйста, пример верстки.

Ссылка на комментарий
Поделиться на другие сайты

Если я правильно понял, речь во про что:

Найти в шаблоне:

<ul class="ipsList_inline ipsList_csv ipsList_noSpacing">
				{{foreach $items as $item}}
					<li>{{if ! $infoLineShown}}{{$infoLineShown=TRUE;}}{lang="records_linking_to_me" sprintf="$item::database()->recordWord(0,TRUE), $record::database()->recordWord(1)"}: {{endif}}<a href="{$item->url()}">{$item->_title}</a></li>
				{{endforeach}}
				</ul>

Заменить на:

<ul class='ipsGrid'>
				{{foreach $items as $item}}
                  	<li class='ipsGrid_span4'>
                    	<h2><a href="{$item->url()}">{$item->_title}</a></h2>
                        <span>{$item->field_11}</span>
                    </li>
				{{endforeach}}
				</ul>

Где field_11 - поле возраста актёра.

Ссылка на комментарий
Поделиться на другие сайты

К сожалению не то. :D

Попробую зайти с другой стороны и переформулировать вопрос.

Как на странице фильма в шаблоне record отобразить список актеров, которые участвуют в фильме, при этом не меняя глобальной шаблон для databaseRelationship, а управлять карточкой актера прямо в шаблоне record для базы данных фильмов. То есть я хочу иметь возможность выводить на страницу record только отдельные поля из карточки актера (не меняя при этом глобальный шаблон databaseRelationship).

Спасибо за внимание!

Ссылка на комментарий
Поделиться на другие сайты

Так в приведённом мной примере можно управлять любыми данными актёров. Не понимаю что ещё нужно) Скажите проще - вывести какое-то инфо в просмотре фильма... или ещё как-нибудь.

Ссылка на комментарий
Поделиться на другие сайты
Только что, Павел сказал:

Так в приведённом мной примере можно управлять любыми данными актёров. Не понимаю что ещё нужно) Скажите проще - вывести какое-то инфо в просмотре фильма... или ещё как-нибудь.

Скажите, пожалуйста, куда конкретно подставлять этот шаблон?

Если использовать его для того чтобы указать формат отображения (в настройках поля). То страница вылетает в ошибкой. Если указать его просто в коде шаблона record, то ничего не работает.

Ссылка на комментарий
Поделиться на другие сайты
6 minutes ago, vinegredz said:

Скажите, пожалуйста, куда конкретно подставлять этот шаблон?

Правка делается в шаблоне Display > record, в примере я никакой шаблон не вставляю, а просто вывожу доп. инфо об актёре на странице фильма, например:

Снимок экрана 2017-06-16 в 14.25.12.png

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

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
 Поделиться

×
×
  • Создать...

Важная информация

Используя наш сайт вы соглашаетесь с нашей Политикой конфиденциальности