今天将一个magento网店升级时碰到了下面的错误,网络上没找到解决的方法.
Fatal error: Undefined class constant 'COUPON_TYPE_NO_COUPON' in /var/opt/abc.com/app/code/core/Mage/SalesRule/sql/salesrule_setup/mysql4-upgrade-1.4.0.0.1-1.4.0.0.2.php on line 39
最后自己测试了一下,解决步骤台下:
进入magento对应的数据库,清理掉所有关于salerule的数据,不要担心这个.这个rule可以通过magento后台轻松建立.
然后,打开这个文件将对应的常量引用直接修改成数值.常量对应的值可以在类Mage_Salerule_Modle_Rule的声明文件中找到.
注:虽然上面的方法可以成功升级,不过显然还是存在问题的.而这个问题的罪魁祸首竟然是complier.呵呵.确实如此,不然怎会出现莫名其妙的错误.如:
Warning: include(Mage_Catalog_Model_Product_Attribute_Backend_Recurring.php) [function.include]: failed to open stream: No such file or directory in
Invalid method Mage_Catalog_Block_Product_List::stripTags(Array所以,升级前最好完全关闭此选项.否则你会觉得自己的网站崩溃了.没有认真阅读的人可能要抓狂了!!