cakephp 1.3模型中的交叉连接表

时间:2014-09-16 20:08:15

标签: mysql cakephp cakephp-1.3

我有一个大型应用程序,我在控制器中连接表,...这是一个例子

<?php
class HomeController extends AppController {
var $name = 'Home';

var $uses = array('User', 'UserRole', 'Friend', 'Photo', 'PhotoComment', 'PhotoTag', 'FriendRequest', 'Group', 'GroupDiscussion', 'Music', 'Blog', 'BlogComment', 'Dba', 'Video', 'VideoComment', 'Classified', 'Administration', 'Event', 'GroupFeaturedPoint', 'DbaFeaturedPoint', 'DbaPromoPoint', 'DbaLinkPoint', 'VideoFeaturedPoint', 'ClassifiedWeekpoint', 'ClassifiedMonthpoint', 'Recipe', 'Joke', 'RecipeComment', 'JokeComment');

最近我开始收到错误:致命错误:内存不足(分配18087936)(试图分配1024字节)... 有没有办法在模型而不是控制器中连接表?

1 个答案:

答案 0 :(得分:0)

  

致命错误:内存不足(已分配18087936)(尝试分配1024个字节)

我遇到了CakePHP在无限循环中遇到的这种错误。

这个问题的一个来源是Cake自己的错误处理程序。如果在渲染错误视图时出错,则可能触发无限循环。

查看原始错误是什么。您需要手动停止错误控制器。

在AppController.php文件中:

 function beforeFilter() {
     if($this instanceof CakeErrorController) {
         print_r($this->viewVars);
         die;
     }
     //.....
 }

以上将错误数据转储到浏览器,并停止请求。如果它是一个无限错误循环,这将指向原始原因。