使用magento论坛中的以下提示我遇到了问题:
引用: 您可以做的一个选项是为此属性添加后端模型。 在这个模型中,您可以编写自己的
beforeSave
函数 处理给定值的长度并将其修剪为所需值 长度。该课程应该扩展Mage_Eav_Model_Entity_Attribute_Backend_Abstract
代码:
public function beforeSave($object) {
$attrCode = $this->getAttribute()->getAttributeCode();
if ($object->hasData($attrCode)) {
$object->setData($attrCode, substr($object->getData($attrCode),0,50));
}
return $this; }
我现在的问题是:我如何以及在何处实施此代码段?
我最近把它放在/app/code/core/Mage/Eav/Model/Entity/Attribute/Backend/Default.php
但是没有效果。
答案 0 :(得分:0)
首先,您永远不应该将自定义代码放入核心文件中。这会破坏您的升级能力。在app / code / local下创建自己的自定义模块。在那里,您可以创建从Mage_Eav_Model_Entity_Attribute_Backend_Abstract扩展的模型。
这个链接可以帮助您创建模块:
http://www.smashingmagazine.com/2012/03/01/basics-creating-magento-module/
您还可以使用magerun(magento的cli工具)创建模块:http://magerun.net/