Несколько родителей у одного нода

26 ноября 2008 в 9:52
Аватар пользователя kvser kvser 0 12

Есть иерархический каталог продукции девайсов, каждый девайс в друпале это node:
"Блок 1" состоит из "модуля 1", "модуля 2", "модуля 3"
"Блок 2" состоит из "модуля 1", "модуля 5", "модуля 6"
"Блок 3" состоит из "модуля 2", "модуля 7", "модуля 8"

Тут получается, что у одного модуля могут быть разные родители.
Как сделать в друпале такую иерархию?

Комментарии

если использовать синонимы, то тогда навигационная строка breadcrumb (показывает место где находимся: "Продукция >> Блок 1 >> модуль 1"), будет работать не правильно.
Или я что-то недопонимаю?

26 ноября 2008 в 13:32

Сперва указанное поле надо добавить к типу материала тебе необходимому. Потом оно будет доступно при создании экземпляра этого типа материала.

26 ноября 2008 в 16:42

Начинаю разбираться. Поле node reference сделал выпадающим списком, теперь его можно заполнять.
Но тут получается связь многие ко многим для одного и того же типа материалов.
Таким образом получается, что при заполнении пользователь должен будет и для блока и для модуля выбрать соответствующие reference.
При чем в блоке надо будет указывать несколько модулей, и в модуле несколько блоков. А при добавлении нового блока с модулями 2,4,6, пользователь должен указать в reference для этих модулей этот новый блок.
Геморрой однако...
вот пляшу от этого http://drupal.org/node/124446
Но во вьюхах ничерта не понимаю...((
А может мне не нужны вьюхи в этом случае???

27 ноября 2008 в 12:36

В конечном итоге надо будет для иерархии
"Блок 1" состоит из "модуля 1", "модуля 2", "модуля 3"
"Блок 2" состоит из "модуля 1", "модуля 5", "модуля 6"
"Блок 3" состоит из "модуля 2", "модуля 7", "модуля 8"
сформировать массив типа такого:

array(
"Блок 1"=>array(
пара("модуля 1", URLModule1), пара("модуля 2", URLModule2), пара("модуля 3", URLModule3)
),
"Блок 2"=>array(
пара("модуля 1", URLModule1), пара("модуля 5", URLModule5), пара("модуля 6", URLModule6)
),
"Блок 3"=>array(
пара("модуля 2", URLModule2), пара("модуля 7", URLModule7), пара("модуля 8", URLModule8)
),

)
Для реализации фишки как тут: http://www.support.xerox.com/go/prodselect.asp?Xlang=en_US&metrics=HDR там три колонки, в первой выбираешь- вторая заполняются связанными полями, потом во второй выбираешь - третья заполняется связанными полями.
Получится?

27 ноября 2008 в 16:06

Запустил эту задачу...другим был занят

Вообщем сейчас появляется вопрос: Как сделать вышеописанное дерево? С помощью view? или надо в блоке писать соответствующий SQL-запрос?
Если запрос то по каким полям делать выборку?

18 декабря 2008 в 10:51

"<a href="mailto:ingumsky@drupal.org">ingumsky@drupal.org</a>" wrote:
нужно использовать такосномию и модуль «hierarchical select».

уууу...какое избыточное множество модулей.

А просто по старинке SQL запросами по reference node никак? Я понимаю что при обновлении модуля возможно у мен запрос будет работать не правильно, но это когда еще будет )))
Или друпал пользуют все только перебирая модули, ища подходящий, а потом в гуи галочки выставляют необходимые и все работает?

19 декабря 2008 в 11:21

А что же Вы по старинке сами не напишете? Wink

Да, в Друпале всё обычно решается модулями, насколько я понимаю, потому что для решения большинства задач нужные модули уже есть. Если есть желание, пишите сниппеты и решайте свои задачи самостоятельно, без модулей Wink

20 декабря 2008 в 13:09

"<a href="mailto:ingumsky@drupal.org">ingumsky@drupal.org</a>" wrote:
А что же Вы по старинке сами не напишете? ;)

Я и хочу,просто спрашиваю где найти инфу по базе данных

Да, нужно попробовать использовать готовые модули

22 декабря 2008 в 9:09