2011-07-07 9 views
3

symfony1.4のデフォルトのテンプレートをMustacheに置き換えたいと思います。私の驚いたことに、私はGoogle検索で関連するアプローチを見つけることができません。MustacheをSymfonyに統合するには?

次に、私は簡単な方法でそれを行うことができると思います。

public function executeIndex(sfWebRequest $request) 
{ 
include('/path/to/Mustache.php'); 
    $m = new Mustache(); 
    echo $m->render('Hello {{planet}}', array('planet' => 'World!')); 

    return sfView::NONE; 
} 

これは不器用に見えます。主な問題は次のとおりです:

私のケースでは、ヒゲテンプレート( 'Hello {{planet}}'をどこに保存しますか?

デフォルトのビューハンドラを置き換えることはできますか?テンプレートフォルダにひげそりテンプレートを入れて、行動に透明にすることができますか?

おかげ

答えて

5

私はそれを実装するための最良の方法は、新しいsfView実装を作成することだと思います。現在、sfPhpViewは、出力をレンダリングするためのデフォルトのクラスです。このクラスを拡張し、レンダリングにMustacheを使用することができます。

あなたはたぶん、あなたは小枝する見てみることができます...彼らはSmartyのテンプレートエンジンを実装しているかを確認するために

2

を見sfSmartyPluginを取ることができます。これはmusatcheに似ており、symfony(symfonyの作成者であるFabien Potencierによって作られた小枝)との公正な統合を持っています。 これはsymfony 1.x用のプラグインです:https://github.com/henrikbjorn/sfTwigPlugin

+0

hm〜、私は成熟したJavaScriptとPHPのlibを持っているので、口髭が好きです。テンプレートは、ブラウザ側とサーバ側の両方で使用できます。 –

+1

コメントありがとうございました。私はおそらくあまりにもfabpot指向です。 – dxb

関連する問題