При создании multiselect в админке через addFields что написать, чтоб выделить (selected) определенные поля?
или в каком файле внести изменения, чтоб они отметились?
так создаю multiselect:
$catsprod[] = ( array(
'label' => (string)$cat->getName(),
'value' => $cat->getId()
));
$fieldset->addField('category_id', 'multiselect', array(
'name' => 'category_id[]',
'label' => Mage::helper('blog')->__('Category Product'),
'title' => Mage::helper('blog')->__('Category Product'),
'style' => 'height:100px',
'values' => $catsprod,
));
Как выделить опции поля множественного выбора?
02.02.2012 10:08
Ваша проблема состоит в том, что вы думаете, что заполнение формы значениеями должно происходить в методе addField.
А это не так.
А addFields - это ещё и написание метода с ошибкой.
На самом же деле, заполнение формы значениями происходит посредством метода setValues.
Вы бы посмотрели любой рабочий пример, например Mage_Adminhtml_Block_Cms_Block_Edit_Form::_prepareForm
Так вот, в методе setValues для поля типа "множественный выбор" (multiselect) надо указать ключ и значение.
Значением должен быть массив системных имён тех опций, которые требуется выделить.
А это не так.
А addFields - это ещё и написание метода с ошибкой.
На самом же деле, заполнение формы значениями происходит посредством метода setValues.
Вы бы посмотрели любой рабочий пример, например Mage_Adminhtml_Block_Cms_Block_Edit_Form::_prepareForm
Так вот, в методе setValues для поля типа "множественный выбор" (multiselect) надо указать ключ и значение.
Значением должен быть массив системных имён тех опций, которые требуется выделить.