0

Структура мне нужно реализовать:Drupal термины карта таксономии в одной конкретной роли на узел

  1. А ссылки на узлы нескольких терминов таксономии типа человека.
  2. Человек играет одну конкретную роль на узел.
  3. Эта роль отличается от этой роли таксономических терминов на другом узле.
  4. Термин таксономии не должен определять роль, поэтому роль может быть пуста.

Пример для описания желаемого поведения немного лучше:

  1. Фильм содержит таксономии терминов, как актер.
  2. Актер играет роль «Магнето» на узле А и роль «Гэндальф» на узле B.

Возможный способ реализации я могу думать прямо сейчас:

  1. Add пользовательскую таблицу nid_tid_role_mapping в базу данных drupal со следующими полями: nid, tid, role_name
  2. Захватите в node_presave и получите все термины таксономии актера.
  3. только получить те из следующего формата "Актер Имя (Role)" (ФЭ "Ян МакКеллен (Magneto)")
  4. Добавить НДИ, TID и роль в таблице nid_tid_role_mapping
  5. После добавления роли, NID и tid, переименуйте термин таксономии обратно в «Имя актера».
  6. Добавить специальную таблицу в форму редактирования узла, в которой перечислены имена имен и роли этого узла.

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

ответ

0

Как насчет создания двух словарей, слова «актер» и «характер». Узел типа «фильм» ссылается на «символ» (& «актер», возможно), а словарный знак «слова» ссылается на слова «актер».

Или другой способ - создать типы узлов вместо терминов таксономии и создать отношения между ними, используя модуль «entityreference». Это, возможно, лучшее решение, если вы хотите избежать получения нескольких терминов «Джеймс Бонд» (по одному для каждого актера).

В прошлом я пробовал модуль «отношение», но он был сложным для моих нужд, а затем его не так популярен, как «сущность ссылок»