2009-05-31 12 views
0

私は、そのアクションのレンダリングされたテンプレートデータを保持するSymfonyアクションに変数を設定したいと思います。私はそのアクションでいくつかのJSONコンテンツを返しています。そのアクションがJSONに出力する内容を保存して返したいと思います。Symfonyでは、レンダリングされたテンプレートのコンテンツをアクション内の変数として取り出す方法は?

public function executeAjaxPriceAdditionCreate(sfWebRequest $request) 
{ 
    $this->form = new ProductPriceAdditionAjaxForm(); 

    $json['success'] = $this->processAjaxPriceAdditionForm($request, $this->form); 
    $this->setTemplate('ajaxPriceAdditionNew'); 
    $json['content'] = ???; // THIS IS WHERE THE RENDERED TEMPLATE CONTENT SHOULD GO. 

      $this->getResponse()->setHttpHeader('Content-Type','application/json; charset=utf-8'); 
    return $this->renderText(json_encode($json)); 
} 

答えて

0

最後に、JSONを送信する代わりにフラッシュを使用していました。 AJAXコンテンツのテンプレートは、上部のフラッシュを検出しようとしました。そうであれば、「成功」メソッドを実行しました(モーダルポップアップボックスを閉じる)。

2

あなたが部分としてテンプレートに名前を付ける場合は、あなたが

$json['content] = $this->getPartial('ajaxPriceAdditionNew'); 

getPartial API

+0

を参照してくださいを使用することができますこれは、それが部分としてあなたのテンプレートを持っている作品として、別の可能な方法です。ありがとうございました。 –

0
exit($this->getPartial('ajaxPriceAdditionNew')); 

// apps/frontend/modules/community/templates/_ajaxPriceAdditionNew.php 
関連する問題