Ich glaube standardmäßig, Cake führt keine Ajax-Anfragen über das Hauptlayout, so dass MOST HTML nicht da sein sollte. Wenn nicht, können Sie erzwingen, welches Layout verwendet werden kann, indem Sie die render-Methode für einen Controller aufrufen und das Layout auf "ajax" setzen. Referenz: http://book.cakephp.org/view/57/Controller-Methods#render-428
Ich hatte auch Probleme mit Debug aktiviert, weil alle SQL-Anweisungen in einer HTML-Tabelle am Ende der AJAX-Anforderungen protokolliert wurden, und einige schwerwiegende Parsing-Probleme verursacht, wenn der Datentyp AJAX erwartet wurde . Dies ist wahrscheinlich ein Hack, aber ich habe Folgendes getan, um es zu umgehen.
Im Haupt AppController in der before() Ich habe die folgenden (stellen Sie sicher, alle anderen rufen Methode, um die Eltern before Methoden des Controllers):
if ($this->RequestHandler->isAjax()) {
$db =& ConnectionManager::getDataSource('default');
$db->fullDebug = false;
}
In Kuchen/libs/Modell/Datenquellen/dbo_source. php in etwa auf Linie 2074 in meiner Version, änderte ich
if (Configure::read() > 1) {
$this->showLog();
}
zu
if (Configure::read() > 1 && $this->fullDebug) {
$this->showLog();
}
Die erster Parameter/ist/das Ergebnis des POST. Das Ergebnis ist zufällig ein langes Dokument vom Server. Wie von Dr.Jokepu angegeben, kann es ratsam sein, dies auf der Serverseite zu korrigieren. –