多表连接查询错误

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 46 bytes) in D:\yii\framework\db\ar\CActiveRecord.php on line 1704

这个错误是什么原因造成的呢?

你是不是试图读入很多的记录?

已经找到原因了,是内存128M的限制,把php.ini的memory_limit改大点就可以了

128MB的内存限制已经比较大了。你读了多少记录了?

几万条

不知道强哥对ROR熟悉否?个人感觉ROR的AR功能比Yii强大些。比如说ROR中的sum函数可以对关联的多个表中满足一定条件的列求和。

比如:ROR中

Post.sum(:num,include => :comment,:conditions => "comment.status = 1")

完成相应功能的Yii代码是不是要动用foreach,然后对满足特定条件的列作自加操作?

我研读过RoR的代码。和它比起来,Yii还是学习者,虽然在某些方面有创新。

另外,Yii里的STAT关系也是可以指定条件的。

多表关联,对满足特定条件的列求和用Yii应该在哪里指定条件呢?

和普通关联对象一样指定。