2014-09-16 1 views
0

у меня есть большое приложение, в котором я присоединяюсь таблицы в контроллерах, ... вот один пример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 байта) ... Есть ли способ присоединиться к таблицам в моделях вместо контроллеров?

ответ

0

Fatal error: Out of memory (allocated 18087936) (tried to allocate 1024 bytes)

Я видел этот тип ошибок от CakePHP, когда он застревает в бесконечном цикле.

Одним из источников этой проблемы является обработчик ошибок Cake. Если при визуализации представления ошибки появляется ошибка, это может вызвать бесконечный цикл.

Чтобы узнать, в чем была оригинальная ошибка. Вам необходимо вручную остановить контроллер ошибок.

В файле AppController.php:

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

выше будет выводить данные об ошибках в браузере, и остановить запрос. Если это бесконечный цикл ошибок, это укажет на исходную причину.

 Смежные вопросы

  • Нет связанных вопросов^_^