Есть несколько видов документа которые отличаются только словарями таксономии.
Вариант 1.
Для каждого вида документа создаем свой тип материала и подключаем к нему нужные словари. Решение тривиальное, но типов материалов в итоге может получиться очень много.
Вариант 2.
Создаем один тип материала, в нем создаем поле ССК (выпадающий список) и в зависимости от данного выбора подгружаем в форму (Аякс?) необходимые словари.
Лично мне второй вариант интуитивно кажется более разумным, но как его реализовать пока не очень понятно. Может есть какие готовые решения или в сторону каких модулей имеет смысл посмотреть?
Заранее спасибо за ответы.
Комментарии
а может один тип материала, один словарь и http://drupal.org/project/hierarchical_select (по результату будет похож на ваш второй вариант)
Именно сейчас смотрю на данный вариант, но пока не понял есть ли возможность разным ролям каким либо образом давать возможность редактировать отдельные части (а не все) данного единого словаря. Если такой возможности нет, то данный вариант мне увы не подходит.
И второе: не понимаю возможно ли часть словаря представить пользователю с помощью taxonomy_menu? Пока вижу только как весь словарь, а это меня не устраивает.
Подойдите к задаче с другой стороны. С какой целью вы создаете эти несколько словарей и несколько типов материала? для разгранечения прав доступа? Структурирования данных? Разделения по типам?
" для разгранечения прав доступа?" - Нет, только некоторые роли будут иметь возможность добавлять в определенные части словаря (или в определенные словари) термины. В остальном доступ к документам данного типа (типов) на уровне ролей не ограничен. Есть другие ограничения по доступу (самопис) но к данному вопросу отношения это не имеет.
"Структурирования данных?" - да, некоторые словари пользователям должны представляться в виде иерархии меню. И выводиться в виде представлений в которых критериями фильтров являются термины словарей.
"Разделения по типам?" - не совсем понял что имеется в виду. Тип материала хочется оставить один (для данных типов документов), но пока не понимаю как это сделать.
Если Вы хотите еще и
, и
, тогда логичнее первый вариант. Как бонус - появится возможность давать право на создание/редактирование отдельных типов материалов.
И да, опишите задачу и цели задачи более подробно.
Попытаюсь.
Имеем мультисайтинг с общими пользователями, общими ролями, раздельными связями пользователь-роль и частично общим контентом. Т.е. есть типы материалов общие для всех сайтов и есть типы материалов, материалы которых доступны только на родительском сайте (это достигается заполнением одного из полей ССК значением base_url и далее по этому значению определяется показывается этот материал или нет). Именно про подобные материалы (точнее про их часть - самые обычные страницы без всяких наворотов) и идет речь.
Естественно каждый сайт имеет свою структуру и расположение конкретного документа в определенном разделе конкретного сайта задавалось определенным полем ССК (выпадающий список) в котором определяется в какой раздел сайта данный документ попадает. Назовем это подтипом документа. Данный выпадающий список для каждого сайта естественно свой.
В настоящий момент столкнулся с проблемой, что в некоторых разделах нескольких сайтов проекта внутри раздела нужно создать иерархическую структуру документов, причем данная структура будет создаваться пользователями определенной роли, а не главным администратором.
Т.е. При создании нового документа если в выпадающем списке выбирается определенный подтип документа, то необходимо обязательно указать его месторасположение в иерархии внутри данного раздела и показываться данный выбор должен только для данного подтипа. При этом есть еще несколько словарей таксономии общие для всех документов, которые доступны всегда, для документов данного типа.
Как проще всего такое сделать? Вариант для каждого варианта создавать свой тип материала... по скромным оценкам такой список типов сразу перевалит за полсотни, а проект только начинается и сайты к нему будут добавляться, а каждый сайт это 3-5 новых типа...
Вот такая ситуация. Очень надеюсь на советы.
Да, Вы правы, в этом случае логичнее оставить один тип материала, верхнюю структуру задать таксономией, нижнюю - либо таксономией, либо полем ССК. Придется немного дописать жава-скриптов, чтобы в формах создания материала показывались/скрывались поля нижней иерархии.
Верхняя структура у меня сейчас сделана полем ССК - думаете логичнее переделать на таксономию?
Т.е. Только самому писать? Неужели ничего подходящего готового прикрутить не получится? В жаве совсем не силен
Логичнее? Наверное. Ведь таксономия для этого и сделана.
А я не силен в знаниях готовых модулей. Может что и есть.