VBO - массовое добавление и удаление ссылок на ноды.

Главные вкладки

Аватар пользователя Nick Fedchik Nick Fedchik 6 апреля 2012 в 21:11

Есть два типа сущностей (нод) - Соревнование и Спортсмен.
У сущности Спортсмен есть поле ссылки на много нод типа Соревнование.
Имеем Спортсмен *-->* Соревнование

Задача 1:
Имеется большое множество Спортсменов, допустим больше 500.
Создается Соревнование. На него надо выбрать Спортсменов.
Делаю вьюв в виде вкладки, назначаю его на тип ноды "Соревнование".
Выбираю ноды типа Спортсмен, добавляю поле VBO и операцию "Modify entity values (views_bulk_operations_modify_action)"
Добавляю во вьюв контекстный фильтр по полю "Ссылка на Соревнование" у сущности Спортсмен, ставлю инверсию - чтобы не показывать в списке тех Спортсменов, которые уже имеют связь на это Соревнование.
В итоге чекбоксами выбираю нужных Спортсменов, жму кнопку "Назначить", далее в поле с автодополнением ввожу название этого же соревнования.

Вопрос 1: Как установить для VBO значение, которое надо будет присваивать полям на втором этапе? Т.е. хочется взять контекстное значение - номер ноды Соревнования, во вкладке которого я и выполняю такое добавление. Чтобы избежать лишней операции, а значит и ошибки.

Задача 2:
Обратная от задачи 1. Есть вкладка на странице Соревнования со списком Спортсменов, на это Соревнование назначенных.

Вопрос 2: Как выполнить unlink? (убрать связь между сущностью Спортсмен и данным Соревнованием, на странице которого показан вьюв)

Искал в Actions/Rules - ничего подходящего.