Jump to content

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


vinegredz
 Share

Recommended Posts

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

Есть база фильмов (классическая для 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>

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

Link to comment
Share on other sites

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

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

Link to comment
Share on other sites

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

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

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

Link to comment
Share on other sites

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

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

<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 - поле возраста актёра.

Link to comment
Share on other sites

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

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

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

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

Link to comment
Share on other sites

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

Link to comment
Share on other sites
Только что, Павел сказал:

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

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

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

Link to comment
Share on other sites
6 minutes ago, vinegredz said:

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

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

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

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

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

Messenger

    ×
    ×
    • Create New...

    Important Information

    By using our site you agree to our Privacy Policy