【发布时间】:2013-02-10 10:32:08
【问题描述】:
我在我的模块设置文件中使用这个函数创建了一个属性:
$this->addAttribute(Mage_Catalog_Model_Product::ENTITY, 'outofstock_date', array(
'group' => 'Inventory',
'input' => 'text',
'type' => 'int',
'label' => 'Out of Stock Date',
'visible' => 0,
'required' => 0,
'user_defined' => 1,
'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL
));
我知道该属性的创建有效,因为我可以使用此查询在数据库中找到它:
select * from eav_attribute where attribute_code like '%stock%';
但是,我在后端找不到它。它没有出现在编辑产品页面上,我看不到它在属性管理屏幕和属性集之一中列出。创建它时我做错了什么?为什么我在后台找不到?
另外:上面是在mysql4-install-0.1.0.php 安装文件中,配置文件中触发它的部分是这样的:
<resources>
<giftlab_inventory_setup>
<setup>
<module>Giftlab_Inventory</module>
<class>Mage_Catalog_Model_Resource_Eav_Mysql4_Setup</class>
</setup>
</giftlab_inventory_setup>
</resources>
【问题讨论】:
-
再次检查您的属性集管理器,并尝试在库存组或未分配的右侧找到它。
-
@KalpeshMehta 我找到了,但找不到。我什至尝试重新索引所有内容(缓存已禁用),仍然没有。
-
验证您的安装脚本是否已成功运行。检查 core_resource 表中的条目。
-
条目出现在 core_resource 表中,就像我说的那样,该属性确实被插入了。我认为问题可能出在我正在使用的课程上?
标签: php mysql magento attributes setup-deployment