当我使用以下代码更新商店信用余额给客户时,我收到此错误:
致命错误:在
中的布尔值上调用成员函数setCustomer()
$balance = Mage::getModel('enterprise_customerbalance/balance')
->setCustomer($customer)
->setWebsiteId($websiteId)
->setAmountDelta($anyNumber)
->setComment($data['comment']);
$balance->save();
答案 0 :(得分:0)
确保此模型类(或其父类)具有名为setCustomer()
的方法分享型号代码以获得进一步的建议。通常,类构造函数不会返回布尔值。
答案 1 :(得分:0)
在此处进行一些代码审核之后,您将:
$balance = Mage::getModel('enterprise_customerbalance/balance')
->setCustomerId($customer->getId())
->setWebsiteId($websiteId)
->loadByCustomer();
$balance->setAmountDelta($anyNumber)
->setUpdatedActionAdditionalInfo($data['comment'])
->setHistoryAction(1)
->save();
答案 2 :(得分:0)
代码Mage::getModel('enterprise_customerbalance/balance')
似乎返回false
。
请确认您是否拥有Enterprise_CustomerBalance_Model_Balance
课程。
也许您正在尝试使用Magento Enterprise Edition for Magento Community Edition的代码。
如果您在$className
课程的方法getModelInstance
中观看Mage_Core_Model_Config
的值。它返回' Mage_Enterprise_Customerbalance_Model_Balance' Magento社区版的价值。没有这样的类,函数Mage::getModel('enterprise_customerbalance/balance')
返回false。
您可以尝试使用代码检查版本(如果Magento社区版本> = 1.7,它应该有效) - Mage::getEdition()