Как скрыть необходимый виджет ввода CCK Nodereference в #after_build?
После того, как узел был сохранен, я бы хотел заблокировать пользователям редактирование обязательного поля ссылки на узел. Я попытался изменить тип на 'nodereference_hidden', как это, но тогда отправка не будет подтверждена: поле обязательно для заполнения.
... Так что я не стал проверять 'required' в пользовательском интерфейсе настройки поля и скрывал его так:
$form['field_my_nodereference_field'][0]['#type'] = 'nodereference_value';
Так как он передается как значение, нет причин его терять, но я бы чувствовал себя безопаснее, оставляя поле "обязательным".
1 ответ
Проверка 'требуемого' друпала делает некоторые забавные вещи (удаление css, сброс многоэтапных форм и т. Д.), К счастью, вы можете добавить свою собственную функцию hook_validate, которая проверяет значение, проверяет его правильность и т. Д. Добавьте красную звездочку и назовите это день.