У меня есть два типа контента «Идея» и «Задача». Если я создаю идею со ссылкой на закрытый вызов, тогда мне нужно предотвратить сохранение идеи. Можно ли это сделать с помощью правил?Как предотвратить создание нового узла, если указанный узел закрыт?
0
A
ответ
0
Вы можете сделать это с правилами, однако я бы сделал это программно.
В правилах вам нужно настроить правило st как «pre save», где вы настраиваете свои условия, чем отбрасываете ошибку формы.
Программно: Внедрите hook_form_alter(), в котором вы должны иметь форму проверки, которая вызывает функцию, в которой вы проверяете.
https://api.drupal.org/api/drupal/modules%21system%21system.api.php/function/hook_form_alter/7
ПРИМЕР
function YOURMODULE_form_alter (&$form, &$form_state, $form_id) {
if ($form_id == 'YOURCHALLANGENODETYPENAME_node_form') {
$form['#validate'][] = 'YOURMODULE_form_validate';
}
}
function YOURMODULE_form_validate ($form, &$form_state) {
// load your idea here st like:
$idea = entity_load_single('node', $form[YOURNODEREFERENCEID]);
if ($idea->status == 0) {
form_set_error ('YOURNODEREFERENCEFIELDNAME', t('ERROR_MESSAGE_TEXT'));
}
}
Смежные вопросы
- 1. Найти узел-брат, если указанный узел найден
- 2. предотвратить совпадение узлов при добавлении нового узла
- 3. предотвратить создание нового jsessionid?
- 4. Groovy: Создание нового узла
- 5. Xml корневой узел не закрыт
- 6. Создание нового узла через Razor (в Umbraco)
- 7. elasticsearch: Не удается найти индексированные данные (узел узла закрыт)
- 8. jsTree -prevent родительский узел от открытия при создании нового узла
- 9. Создание нового узла для двоичного дерева поиска
- 10. Как удалить указанный узел из связанного списка?
- 11. Создание нового узла на основе обнаружения узла grand-child
- 12. Accumulo - Добавление нового узла
- 13. Создание нового JButton внутри, если
- 14. Как предотвратить ускорение узла?
- 15. создания нового узла в jstree
- 16. Создание узла версии в Titan
- 17. Добавление нового дочернего узла в определенный родительский узел
- 18. Как предотвратить создание нового rand() после cin in c?
- 19. как восстановить/предотвратить сбой сети при сбое корневого узла узла
- 20. Корневой узел равен null после вставки нового узла в AVLTree
- 21. Как предотвратить создание нового экземпляра класса при каждом вызове хоста?
- 22. Добавление нового корневого узла в родительский узел существующего дерева.
- 23. jstree dnd предотвратить удаление узла
- 24. Ошибка создания нового узла
- 25. Связанный список - вставка нового узла
- 26. Как запустить IRC-узел узла?
- 27. Как удалить узел, если у него нет родительского узла
- 28. Как изменить значение узла в XML, если другой узел пуст
- 29. Создание дочернего узла от родительского узла
- 30. Шаблон Sitecore - открытое дерево при создании нового узла?