在Magento中找不到Varien_Data_Form_Element_Int

时间:2011-04-19 15:36:37

标签: php magento

我创建了一个名为sales_index的Magento属性。我已经从我创建的模块中的安装脚本创建了属性为整数。这就是我在安装脚本中添加的内容:

$installer = $this;
$setup = new Mage_Eav_Model_Entity_Setup('core_setup');
$installer->startSetup();

$setup->addAttribute('catalog_product', 'sales_index', array(
    'input' => 'int',
    'type'  => 'int',
    'backend'   => '',
    'visible'   => 0,
    'required'  => 0,
    'user_defined'  => 1,
));

$installer->endSetup();

该属性似乎正确创建,因为安装程序没有给出错误。但是,当我将sales_index属性移动到默认产品属性组并在管理面板中加载其中一个产品时,我收到以下错误:

Fatal error: Class 'Varien_Data_Form_Element_Int' not found in /var/www/vhosts/workingperson.com/magento/lib/Varien/Data/Form/Abstract.php on line 129

所以我想我可以从默认属性组中取出这个属性并且没问题。我打算在背景中设置这个值。但是,当我加载产品时,此值不会随之而来。该值正在数据库中设置,它只是没有被加载。

我假设我创建了一个对我来说不易察觉的属性做错了。

有谁知道我必须做些什么才能让它正常工作?

2 个答案:

答案 0 :(得分:4)

尝试从安装程序中删除'input' => 'int'行。我不相信整数有单独的表单元素类型,错误也适用于它。

答案 1 :(得分:3)

尝试将'input' => 'int',更改为'input' => 'text',。如果此注册表已在桌面上,请转到eav_attribute搜索您的行,并将字段frontend_input更改为text

这可能有用。