Magento Report Collection通知

时间:2012-10-05 09:31:12

标签: logging magento

有一段时间我收到以下通知:

Notice: Undefined index:  title  in /opt/ocentric/magento/app/code/core/Mage/Reports/Model/Mysql4/Report/Collection.php on line 126

丑陋的是它使system.log文件变得庞大。一旦发生,通知记录就会进入无限循环。我无法弄清楚触发它的原因。

查看getIntervals()方法,似乎此问题与报告中的日期范围过滤有关,但我无法弄清楚$t如何保持未设置状态。

有什么想法吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

在Magento 1.7中,该课程已被移动,因此我不确定它已经改变了多少。假设方法结构几乎没有变化,那么$t['title']无法设置的唯一方法是_period不是'day','month'或'year'。我个人会在类中添加一些调试代码,以便在switch语句之后执行以下操作:

if ( ! isset($t['title'])) {
    Mage::log('Period is '.$this->_period);
}

下次出现错误时,您应该会看到一个意外的值(它可能以某种方式为null,导致空字符串)。从那里你将有一些更好的信息来调试。您也可以记录调试回溯,它可能很有用。