Дочерний тип контента (Drupal)
Мне нужно создать два типа контента (Список вызовов и Объявления о вызовах), в Объявления о вызовах есть 5 полей, в Списке вызовов есть 12 полей, но 5 из них взаимны с объявлениями о вызовах, я не хочу создавать 2 разных типа контента (Список вызовов, Объявления вызовов), потому что когда пользователь создает узел, он должен иметь возможность выбирать, где будет отображаться узел (в Списке вызовов, в Объявлениях о вызовах, Оба). (Список вызовов и Объявления вызовов должны находиться в одной таблице базы данных)
Как я могу это сделать?
1 ответ
Вы можете создать один тип содержимого, содержащий все поля.
После этого добавьте поле с флажками с такими параметрами, как "Показать в списке вызовов" и "Показать в объявлениях о вызовах". Это дополнительное поле можно использовать для определения поведения создания / редактирования / просмотра.
При создании / обновлении контента.
Теперь вы можете пойти дальше и установить условные поля, если вы хотите условно показать некоторые поля на основе значений выбранных флажков.
При просмотре контента
Используйте представления для отображения списка. Здесь вы можете решить, что будет отображаться в списке, отфильтровав список по значениям флажков. В качестве бонуса дополнительные просмотры помогут вам решить, какие поля нужно показывать пользователю.