データの一部が破損していると思われるため、TreeBehavior の回復メソッドを使用しようとしています。これを行おうとすると、次の SQL エラーが発生します。
エラー: SQLSTATE[42000]: 構文エラーまたはアクセス違反: 1064 SQL 構文にエラーがあります。1 行目の SQL クエリ: UPDATE の近くで「AND」を使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してくださいfracmerl_dev
。categories
セットCategory
としてCategory
。lft
= Category
. lft
+ 4203 どこCategory
で . lft
との間
明らかに、クエリにはいくつかの値がありません。次の警告も表示されます。
注意 (8): 未定義のオフセット: 0 [CORE/Cake/Model/Behavior/TreeBehavior.php、865 行目]
これは Cake バージョン 2.3 です。
編集:
TreeBehavior の 865 行目は、このコード ブロックの最後の行です。
list($node) = array_values($Model->find('first', array(
'conditions' => array($scope, $Model->escapeField() => $Model->id),
'fields' => array($Model->primaryKey, $parent, $left, $right),
'recursive' => $recursive
))); //THIS IS LINE 865
したがって、の戻り値にarray_values($Model->find...
はオフセットがないと仮定してい0
ます。エラーが 861 行目ではなくその行にあると PHP が言っているのは奇妙に思えますが、再確認したところ、間違いなくその行です。
ありがとう