Пытаюсь с помощью Rules присвоить документу, который является элементом подшивки (book), перед сохранением тот же термин таксономии, что и у родителя этой подшивки. Загружаю ноду по id ([node:book_id]), словарь, термин из загруженной ноды ([node_loaded:term-id]) и в конце добавляю действие "Назначить термин материалу". Ничего не назначается. Хотя если этот термин вывести в заголовок создаваемой ноды, то отлично выводится. Пробовал по разному, все этапы работают, кроме назначения термина создаваемому материалу.
Поиск по d.ru и d.org ничего не дал.
Кто-нибудь наступал на такие грабли с Rules?
З.Ы. Буду пробовать делать прямой запрос на обновление таблицы term_node, но не хочется сдаваться на милость багу или криворукости...
Комментарии
Заработало лишь когда в свойствах словаря поставил "Тэги", но меня это не устраивает... Продолжаю копать...
Хотел с помощью Devel посмотреть запросы, создаваемые Rules, но он не показывает запросы, создаваемые перед сохранением ноды.
Везде грабли...
Вообщем, для своей задачи я эту проблему обошел выполнением в конце двух строчек
<?php
db_query('DELETE FROM {term_node} WHERE nid = %d',$node->nid);
db_query('INSERT INTO {term_node} (nid, vid, tid) VALUES (%d, %d, %d)', $node->nid, $node->vid, $taxonomy_term->tid);
?>
Но почему термин не присваивался самим рулесом - так и осталось загадкой
Здравствуйте, похожая проблема.
Эти запросы вы вставили в действии в rules?