CakePHP: невозможно использовать modParams с несуществующими индексами

Я пишу источник данных для доступа к внешнему веб-сервису, он работает нормально, как и ожидалось, но после запуска веб-сервиса я получаю следующую ошибку:

CakeException: Cannot use modParams with indexes that do not exist.
in /project/lib/Cake/Utility/ObjectCollection.php on line 128

После небольшого поиска в Интернете я нашел этот похожий вопрос:

Что на самом деле означает эта ошибка?

К сожалению, это не помогло мне решить мой ответ.

Я понимаю, что ошибка ожидает от меня удаления (или добавления дополнительных параметров), но я не понимаю, где я устанавливаю эти параметры для их редактирования.

1 ответ

Решение

(отвечая на мой вопрос, чтобы помочь другим с той же проблемой!)

Проблема

Вопрос, который у меня был в моем AppModelЯ поставил public $actsAs = array('Containable');Я делаю это, поэтому все мои модели прикрепляют containable поведение, (я тогда установил recursive в -1 по умолчанию для всех моделей и укажите рекурсию по мере необходимости (с вызовом).

Так что в этом случае мой datasource модель (которую я использую для взаимодействия с datasource), имел containable привязанное к нему поведение (и поэтому CakePHP посчитал, что это правильно, и обработал его в соответствии с обычной моделью (что не так, поскольку у него нет связей или таблицы базы данных).

Решение

Решение было просто добавить public $actsAs = false; в моей модели источника данных (который удалил унаследованные containable поведение).

;)

Другие вопросы по тегам