Как обращаться с такого рода ссылками на узлы при создании нового экземпляра типа контента?


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

Мне нужно иметь три типа "сущностей" (типы контента):

  • Рабочий
  • Город
  • Государство

Каждый Работник живет в одном и только одном Городе , и каждый Город находится в одном и только одном Состоянии.

Я мог бы создайте эти три типа содержимого:

  • Состояние
  • Город, который будет иметь ссылку на узел Состояние
  • Рабочий , у которого будет ссылка на узел Город

Но...

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

Как я мог бы добавить функцию , выбрав сначала Штат, а затем Город, при создании нового работника или что-то в этом роде, что позволяет пользователю дифференцироваться?

Редактировать:

Модуль Зависимые поля работали бы в этом случае, но это заставляет меня добавить еще одно поле в содержимое рабочего: Состояние . Я не хочу этого, потому что это может быть своего рода избыточной информацией (зная город работника, я также могу знать штат). Вы понимаете, что я имею в виду?

 5
Author: kiamlaluno, 2011-03-26

6 answers

Я бы создал иерархию таксономии, в которой есть вложенные штаты -> Города. Затем вы можете предоставить им возможность выбрать состояние и отфильтровать раскрывающийся список по родительской таксономии.

Иерархический выбор сделает это за вас.

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

Ким

 5
Author: Kim Pepper, 2011-03-29 01:46:49

Похоже, что модуль Условных полей может помочь. Это позволяет вам сделать поля CCK зависимыми, чтобы вы могли выбрать штат, а затем получить город.

Некоторые дополнительные сведения об этом модуле (со страницы проекта):

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

При редактировании узла (или любого другого типа сущности, который поддерживает поля, такие как пользователи и категории) зависимые поля динамически изменяются с помощью API состояний.

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

 2
Author: davidhernandez, 2020-06-15 09:13:00

Как насчет использования модуля Postal ? Мне бы не помешала помощь в его разработке.

 1
Author: Capi Etheriel, 2011-03-29 12:59:00

Я нашел это - http://drupal.org/node/626088 - Иерархическая ссылка На Узел Выбора.

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

 1
Author: davidhernandez, 2011-03-29 15:48:16

Я думаю, вам следует использовать таксономию для штата и города с многоуровневыми уровнями? После использования модуля hierarchical_taxonomy.

Наслаждайтесь;)

 0
Author: dobeerman, 2011-03-29 01:50:01

Как насчет создания различных сущностей. вы можете использовать eck http://drupal.org/project/eck один объект для штата, а другой для города. тогда вы могли бы использовать отношение (http://dev.nodeone.se/en/learn-the-relation-module ) o возможно, ссылка на сущность (http://dev.nodeone.se/en/using-the-reference-modules). затем вы создаете поле в учетной записи пользователя или в созданном вами типе контента, который ссылается на них.

Вы могли бы использовать демонстрационный костюм (http://www.youtube.com/playlist?list=PL7E361A55994F1648), полевая группа http://www.youtube.com/watch?v=vhA5b5KpHZw и визуализируемые элементы (http://www.youtube.com/watch?v=rSgd91tZSEc), этот ящик содержит несколько типов содержимого

Удачи.....

 0
Author: alexis suarez, 2012-03-03 01:29:37