我遇到了最近出现的问题,这对我们的系统造成了相当大的麻烦。
我们依赖于使用moveown方法组织内容的应用程序,但最近它已停止工作并开始生成以下警告:
Warning (2): array_values() [<a href='function.array-values'>function.array-values</a>]: The argument should be an array in [/usr/local/home/cake/cake_0_2_9/cake/libs/model/behaviors/tree.php, line 459]
引用的行:
list($node) = array_values($Model->find('first', array(
'conditions' => array($scope, $Model->escapeField() => $id),
'fields' => array($Model->primaryKey, $left, $right, $parent), 'recursive' => $recursive
)));
调用方法的行:
$this->movedown($id,abs((int)$position));
我已经筋疲力尽了我想出的每一个想法。还有其他人在此之前遇到过这个问题吗?
任何帮助,或指向一个方向将非常感谢!
答案 0 :(得分:1)
简化您的问题
Configure::write('debug', 1); // <- turn on debug mode (if not set earlier)
$fields = array($Model->primaryKey, $left, $right, $parent), 'recursive' => $recursive));
$conditions = array($scope, $Model->escapeField() => $id);
$results = $Model->find('first', array(
'conditions' => $conditions,
'fields' => $fields)
);
$values = array_values($results);
list($node) = $values;
echo '<pre>';
debug($fields);
debug($conditions);
debug($results);
debug($values);
debug($node);
exit;
现在您可以看到哪个变量作为未定义传递。