新しいアクティブ レコード インスタンスを送信してデータベース テーブルに保存しようとすると、予想どおり、AJAX 警告テキストのない直接的な PHP エラー メッセージが表示されました。それは私を本当に混乱させます。PHP エラー メッセージは次のとおりです。
mb_strlen() expects parameter 1 to be string, array given
...Yii1.8\framework\validators\CStringValidator.php の 72 行目を指しています。
$length=mb_strlen($value, $this->encoding ? $this->encoding : Yii::app()->charset);
そして、次の数行で、PHP エラーは AR クラスのこの行 (209 行目) を指し続けます。
205 $AttributesList = $saveArticleHistory->attributes;
206 $article_history->attributes = $AttributesList;
207 $article_history->article_id = $saveArticleHistory->id;
208 $article_history->id = null;
209 return $article_history->save();
しかし、私の理解では、AR インスタンスがデータベースへの保存に失敗した場合、Ajax 警告が発生します (その Ajax エラー メッセージが表示されている場合)。しかし、ここでは警告メッセージが直接表示されますか? この混乱を手伝ってくれませんか?ありがとうございました。