Подчиненные выборки в виде таблицы

Главные вкладки

Аватар пользователя Majestio Majestio 10 февраля 2015 в 13:29

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

С друпалом - пару-тройку дней, поэтому заранее прошу прощения, если буду спрашивать для вас прописные истины.
В качестве проекта для обучения пробую создать каталог по спортивным соревнованиям.

Дано:

Организации - организации, которые проводят турниры
Турниры - состоят из набора поединков
Поединки - в них участвует два спортсмена
Спортсмены - могут состоять с клубах
Клубы - отдельные спортивные ассоциации

Нужно все эти пять сущностей поместить в меню и иметь возможность просмотра.

Однако, почти все сущности имеют связную информацию, которую нужно вывести внизу "карточки". Например, в карточке "Организация", нужно вывести таблицу Турниров. В карточке "Турнир" - вывести таблицу Поединков. В карточке "Спортсмен" - вывести таблицу Поединков, где он участвовал.

По факту везде одна и та же задача, только с разными сущностями. Ну а теперь сами вопросы:

1) Связь материалов я организовал с помощью модуля Entity Reference. Загружены всеми рекомендуемые Views, CTools, Panels и еще прочие. Нашел еще модуль ViewField, только не знаю в тему ли он? Каковы дальнейшие шаги, что нужно, чтобы получить вложенную таблицу/список в просмотре материала?

2) Не использовал таксономию. Пока не пойму, дублирование названий сущностей в списках таксономии мне что-то даст? В моем случае что я теряю, что не смогу без нее сделать?

Ну вот пока вроде все.

Комментарии

Аватар пользователя Никки Никки 10 февраля 2015 в 14:41

"Majestio" wrote:
Каковы дальнейшие шаги, что нужно, чтобы получить вложенную таблицу/список в просмотре материала?

создать блоки с помощью тех же вьювсов и разместить их где нужно.

Аватар пользователя bumble bumble 10 февраля 2015 в 15:54

С помощью таксономии можно организовывать иерархические списки. Привязывать ноды к терминам таксономии, как к отдельным, так и к общим.
Все привязанные к терминам ноды легко вывести на странице, таким образом категоризируя ноды.
Термины могут быть расширены пользовательскими полями, так же как и обычные материалы.

"Majestio" wrote:
Связь материалов я организовал с помощью модуля Entity Reference. Загружены всеми рекомендуемые Views, CTools, Panels и еще прочие

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

Аватар пользователя Majestio Majestio 10 февраля 2015 в 17:49

Никк,bumble, большое спасибо за ответы и советы!

Никк, вопрос к тебе (извини если на "ты", я не знаю как тут принято) - модуль вьювс позволяет размещаться ниже по уровню? (Вьювс во вьювсе) Типа, вьювс1 - может содержать вьювс 1.1 и вьювс 1.2? Если "да" то как, если нет - как это решаемо?

bumble, thx за описание. По описанию таксономии в сети, я это смутно понимал. Но всеж вопрос ... если термины таксономии можно снабдить доп полями ... зачем нужны ... материалы? Тот же вопрос, немного по-другому, если мы "материалы" оформляем в виде статей словарей таксономии - что теряется относительно того, если мы оформим это "материалом"?

Ну и еще немножко сопутствующих вопросов ....

1) "Вложенную таблицу" я всеж смог оформить с помощью модуля Views Field. Там действительно есть выбор, что выводить "настройки страницы отображения" или "...блока". Вопрос фильтрации-выборки! Как сделать чтобы, учитывая значение Reference, выводить только "привязанные" позиции?

2) Если пользуете модуль Views Table Highlighter, как ставить условие на назначение стилей полей? Пример: материал имеет поля F1,F2,F3,F4. Поля F1 и F2 выводятся (отображаемые), но должны иметь стили определяемые вычисляемым значением, исходя из значений F3,F4. "Приземленные" варианты:
* F1 (красный),F2 (черный) - F1 победил F2
* F1 (черный),F2 (красный) - F1 проиграл F2
* F1 (зеленый),F2 (зеленый) - ничья
* F1 (серый),F2 (серый) - NC (не состоявшийся)

Аватар пользователя bumble bumble 10 февраля 2015 в 18:01

"Majestio" wrote:
если термины таксономии можно снабдить доп полями ... зачем нужны ... материалы?

Термины, как и ноды это сущности Drupal. С 7-й версии поля можно добавлять ко всем сущностям (комментарии, пользователи, таксономия, материалы, commerce-товары, field-collection, свои сущности и т.д.)
Например, из сабжа, можно сделать Организации словарем, добавить поле выбора организации при создании турнира. Таким образом можно будет выбирать уже созданные организации. А к организациям добавить свои поля, например логотип, или тип спорта...
Другой пример - обычный каталог для магазина. Нода - товар, категория каталога - термин.
Основное преимущество таксономии - возможность построения иерархических списков.
"Majestio" wrote:
Как сделать чтобы, учитывая значение Reference

Необходимо использовать связь со ссылаемой или ссылающейся нодой, в зависимости от потребностей.
По ER очень много материала в сети, в т.ч. на этом ресурсе.

Аватар пользователя Никки Никки 10 февраля 2015 в 18:12

"Majestio" wrote:
модуль вьювс позволяет размещаться ниже по уровню? (Вьювс во вьювсе) Типа, вьювс1 - может содержать вьювс 1.1 и вьювс 1.2? Если "да" то как, если нет - как это решаемо?

Вьюс - это просто представление твоих материалов. Этот модуль очень гибкий и позволяет отразить твои материалы на сайте как душе угодно.
Ты можешь создать представление для страницы, а можешь для блока. Блок можно вывести где угодно на странице. При создании вьюса указываешь: страница или блок. Если ты создаешь блок, то после сохранения этого блока во вьюсе, он появится в списке блоков в "структура->блоки". И вот здесь уже ты задаешь расположение этого блока. Если подходящего места нет, тебе нужно задать его - в файлах твоятема.info и page.tpl.php

Аватар пользователя Majestio Majestio 10 февраля 2015 в 18:39

Еще раз, благодарю за ответы! Нужно время, буду пробовать.

Пр вопросу "Views Table Highlighter" ... есть какая инфа, или я "первопрходец"?)

-----------------------------------------------------------------------------------
Попутный вопрос: что есть "дисплеи"? Если представить сайт как ленту - в ней располагаются блоки (Panels). В блоках выводится материал согласно представлениям (Views). А где и каким местом тут "дисплеи"? Или я все не так понял?

Аватар пользователя bumble bumble 10 ноября 2015 в 11:50

"Majestio" wrote:
Пр вопросу "Views Table Highlighter"

Ни разу не пользовался этим модулем.
В каждом модуле с drupal.org есть описание - в папке модуля файл Readme.txt. Обычно там есть ответы на большинство вопросов.
Так же можно почитать о багах и проблемах модуля в разделе Issues

Ну и поиск конечно. В том числе и на dru.
Готовых решений никто не даст.

P.S. суть работы модуля ярко представлена на картинке модуля.

Аватар пользователя Majestio Majestio 10 февраля 2015 в 19:15

bumble, сенкс. Ну что ж ... есть материал для размышлений) По поводу "дисплеев" ... "я прямо есть не могу, паслюшай, да!!!" (С) Армянская народная) Нужен ваш коммент)

Аватар пользователя bumble bumble 10 ноября 2015 в 11:50

"Majestio" wrote:
По поводу "дисплеев"

Если имеется ввиду дисплей представления (views), то
каждое представление может иметь множество дисплеев.
Например: Страница (список всех материалов), Блок (последние 5 материалов), RSS-лента...

Настройки можно применять глобальные, или для каждого дисплея свои.

Аватар пользователя Majestio Majestio 10 февраля 2015 в 21:05

Ясн!!! Если я правильно понял - это набор возможных "способов использования" вида? Иными словами - "вид", это именованный массив возможных представлений (дисплеи - его наименования), или не так?