Como posso exibir ajax resulta em uma exibição em CakePHP sem incluir o modelo padrão na resposta ajax?

StackOverflow https://stackoverflow.com/questions/826922

  •  05-07-2019
  •  | 
  •  

Pergunta

Estou fazendo algumas experiências com AJAX no CakePHP e parece trabalho, exceto que a visão de que é retornado inclui o modelo padrão. Como posso livrar-se de que (ou mesmo apenas especificar um modelo vazio diferente para a vista)?

Foi útil?

Solução

function ajaxFunction() {
    //do stuff
    $this->layout= 'ajax';
}

Ajax é um layout em branco incluídos para evitar a marcação extra que está sendo adicionado, exatamente o que você quer.

http://book.cakephp.org/view/96/Layouts

Outras dicas

Tente usar componente RequestHandler. Isso será feito automaticamente para você. Então, você pode fazer algo parecido com isso no seu AppController :: beforeFilter ()

if($this->RequestHandler->isAjax()) {
    Configure::write('debug',0);
}

Você também vai precisar para desligar a saída de depuração caso contrário bolo esguichará todas as informações de depuração que você costuma ver na parte inferior da página:

function ajaxFunction() {
    //do stuff
    Configure::write('debug', 0);
    $this->layout= 'ajax';
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top