-1

コントローラーの1つでプレーンなJavaScriptを出力するアクションが欲しいのですが、これを実現するための適切な方法について、ブックに何も見つかりません。

$this->response->type('js');どちらを設定してContent-Type: text/javascript; charset=UTF-8も、レイアウトをLayouts / js/default.ctpに変更しないか試してみました

私は使用するように言っている投稿をいたるところに見つけ続けています$this->RequestHandler->renderAs($this, 'js') が、それはその方法がもはや存在しないかのようです:app \ views \ layouts \ jsの使用法は何ですか?

これまでに機能したのは、次の$this->layoutPath = "js";とおりです。cakephpのレイアウトを変更するにはどうすればよいですか。

ただし、この記事はCake1。3日からのもののようです。これはまだjsレイアウトに切り替える正しい方法ですか?

4

1 に答える 1

1

RequestHandlerComponent::renderAsまだ存在しています:

http://book.cakephp.org/2.0/en/core-libraries/components/request-handling.html#RequestHandlerComponent::renderAs

コントローラにリクエストハンドラコンポーネントを含めることを忘れないでください。そうすれば、正常に機能するはずです。

public $components = array
(
    'RequestHandler'
);

public function action()
{
    $this->RequestHandler->renderAs($this, 'js');
}
于 2012-10-30T19:19:40.483 に答える