Я использую обратный вызов cakePHP 2.0 afterFind () для вычисления значений базы данных перед его отображением.
У меня есть три модели - Материалы, Продукты и Котировки.
Каждый продукт имеетматериал и расчеты выполняются в обратном вызове Product afterFind с использованием этой связи, в частности, со строкой:
$results[$key]['Product']['material_cost'] = $results[$key]['Product']['material_mass'] * $val['Material']['cost'];
с $val['Material']['cost']
со ссылкой на связанный материал.
Пока все в порядке.
Далее в моей модели Quote есть обратный вызов afterFind ().Цитата связана с продуктом, а расчеты в модели котировок зависят от вычислений в имеющейся модели Продукта, в частности от той, которая ссылается на материал.
Я могу сослаться на результаты Afterfind модели Product в модели Quote afterFind, просто отлично: $val['Product']['number_tools']
Однако теперь модель Product не может найти связанный материал, и я получаю сообщение об ошибке: Undefinedindex: Material [APP / Model / Product.php, строка 126].
в строке 126 Product.php -
$val['Material']['cost']
Как мне обойти эту проблему, это сводит меня с ума!