администратор создает продукт, ограничение на проверку пользовательских атрибутов для выбора числа между
У меня есть пользовательский атрибут продукта под названием Пожертвование , я создал его с помощью
Catelog->Attribute->Manage-Attribute Add New Attribute.
У них нет проблем, все работает нормально, но мне нужно добавить проверку для этих полей,
При создании продукта администратор должен указывать число от 20 до 100, я упоминаю здесь процент, а 20 - минимальный процент пожертвования,
Я не могу этого сделать, помогите мне, Как это подтвердить? или как я могу ограничить администратора в выборе числа от 20 до 100,? Заранее спасибо:)
1 answers
Одним из вариантов, который не включал бы никакого пользовательского кода, было бы сделать этот параметр полем выбора, а затем добавить все значения параметров из 20-100. Конечно, это может быть не самый красивый вариант, но он будет хорошо работать.
Если вы не хотите добавлять все параметры к атрибуту, вы можете создать этот атрибут и задать исходную модель. В этой исходной модели вы можете затем заполнить поле выбора и не добавлять все параметры самостоятельно.
Просто настройте свой атрибут в сценарий настройки с исходной моделью
$setup->addAttribute('catalog_product', 'custom_select', array(
'input' => 'select',
'type' => 'int',
'label' => 'Custom Select',
'visible' => 1,
'required' => 0,
'user_defined' => 1,
'source' => 'mymodule/selectoptions',
'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL,
));
, А затем добавьте исходный код модели.
class Mypackage_Mymodule_Model_Selectoptions extends Mage_Eav_Model_Entity_Attribute_Source_Abstract {
public function getAllOptions($withEmpty = true)
{
// This code could be done in a for loop :)
$options = array(
array('label' => '20', 'value' => 20),
array('label' => '21', 'value' => 21),
array('label' => '22', 'value' => 22),
array('label' => '23', 'value' => 23),
....
);
if ($withEmpty) {
array_unshift($options, array('label' => '', 'value' => ''));
}
return $options;
}
}