Здравствуйте.
Создал свой тип материала. К нему добавил поле пустой select list. Этот список я заполняю динамически через hook_form_alter. Список заполняется. Значение сохраняется. Но когда нода открывается на редактирование, необходимо списку установить сохранённое значение. Уже пробовал разные варианты. Этот не работает:
<?php
function mymodule_form_alter(&$form, &$form_state, $form_id){
if (
$form_id == "mymodule_node_form") {
$form['my_field']['und']['#default_value'][0] = array(0 => $form['#node']->my_field['und'][0]['value']);
}
}
?>
Подскажите или укажите где почитать. Спасибо.
Комментарии
Решение найдено. Необходимо присваивать ключ списка в селекте нужно привести к String.
Вот снипет маленький, может кому пригодиться:
<?php
if (array_key_exists('und', $form['#node']->my_field) && array_key_exists(0, $form['#node']->my_field['und'])
&& array_key_exists('value', $form['#node']->my_field['und'][0])){
$form['my_field']['und']['#default_value'] = array(0 => $form['#node']->my_field['und'][0]['value']);
}
?>