2011-04-19 29 views
2

我创建了一个名为sales_index的Magento属性。我已经在我创建的模块中将该属性创建为安装脚本中的一个整数。这是我已经把我的安装脚本:Varien_Data_Form_Element_Int未在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 

所以我想我可以利用这个属性被默认的属性组,并罚款。无论如何,我正计划在后台设置这个值。但是,当我加载一个产品时,这个值不会随之而来。该值正在数据库中设置,它只是没有被加载。

我假设我在创建不容易察觉的属性时做了错误。

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

回答

3

尝试从安装程序中删除'input' => 'int'行。我不相信整数有一个单独的表单元素类型,并且错误借用到相同。

+1

如果您想要在产品的编辑页面上看到文本框,请将其更改为“text”。 – clockworkgeek 2011-04-19 18:10:25

2

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

这可能工作。