Intereting Posts
Закрывающий тэг PHP удаляет фид строки Создание массива PHP из столбца MySQL PHP – автоматическая отправка / запуск формы PHP MySQL – столбец «id» в IN / ALL / ANY в подзапросе неоднозначен Разрешить пользователям обновлять браузер без всплывающего окна «Подтверждение повторной отправки формы» Резервное копирование базы данных MySQL в PHP Как я могу запретить пользователям доступ к частям моего приложения Backbone, если они не вошли в систему? PHP-анализ XML Должен ли я использовать экранирование цитат php для одиночных кавычек или использовать двойные кавычки в массивах? Как отправить несколько <input type = "checkbox" /> как массив в PHP? Zend framework – Почему я должен использовать data mapper / Db_Table_Row? Отображение изображения в формате PDF с использованием fpdf Как псевдоним имени столбца в Eloquent jqGrid не может встроить редактирование Ошибка PHP, данные не получены

Создайте временную таблицу в CakePHP и загрузите ее как модель

Мой план состоит в создании временной таблицы с помощью $ this-> Model-> query (); затем загрузите его как Модель, но я получаю сообщение об ошибке «Отсутствует таблица базы данных». Включение отладки на второй уровень показывает, что временная таблица успешно создана, но по какой-то причине, когда я пытаюсь загрузить ее в качестве модели, она не работает. Похоже, что торт даже не пытается увидеть, существует ли таблица, поскольку не отображается запрос «ПОКАЗАТЬ ПОЛНЫЕ КОЛОНКИ ОТ …». Не знаете, как заставить пирог проверять его существование.

$tmpModel = 'tempModel'; $tmpTable = 'temp_models'; $this->Model->query('CREATE TEMPORARY TABLE `'.$tmpTable ... ); $this->loadModel($tmpModel); 

Заранее спасибо.

    $tmpModel = 'TempModel'; // CamelCase

    также попробуйте, ClassRegisty::init($tmpModel);

    окончательной проблемой может быть кеш. но не думайте так

    Хорошо, немного оглядевшись, я нашел решение, которое работает. Проблема заключалась в том, что Cake уже загрузил кэши моделей при загрузке страницы, поэтому использовал их в качестве ссылки на существование таблицы. Для решения этой проблемы я использовал «App :: import (« Модель », $ tmpModel); который создал новый modelCache, позволяющий запустить сценарий loadModel.

     $tmpModel = 'tempModel'; $tmpTable = 'temp_models'; $this->Model->query('CREATE TEMPORARY TABLE `'.$tmpTable ... ); App::import('Model', $tmpModel); $this->loadModel($tmpModel); 

    Спасибо, в любом случае

    После выполнения google в течение часа .. наконец нашел способ иметь модель на временной таблице, и она работает как шарм http://web2.0goodies.com/blog/uncategorized/mysql-temporary-tables-and-cakephp-1- 3 /