2011年10月13日木曜日

symfony2 - ページ作成の流れのおさらい

version : 2.0.4

もう少し詳しい情報は、独学Symfony2 : report2 にもあります。

まず, Symfony2でのページ作成は, 以下のSTEPで成り立っている。

◯ Bundleの作成
① Create a route : リクエストのURIから, 対応するコントローラーを指定するための Routing 情報を決める
② Create a controller : リクエストを処理し, 応答を返すための Controller の部分を作成
③ Create a template : テンプレートの作成

Bundleの作成


Bundleの作成
AcmeStudyBundleを作成
php app/console generate:bundle --namespace=Acme/HelloBundle --format=yml
ちなみに, このコマンドを使用しない場合は, 自分でディレクトリやAcmeStudyBundle.phpなどを作成する必要がある。
また、このコマンドを使用して、AppKernelに自動で追加もできます。今回はこれで作成。


Route の作成

app/config/routing.yml にルーティング情報を追加
routeに, /hello/{name} というパターンに対して AcmeStudyBundle:Hello:index が呼ばれるように設定する。

以下のようにして、routingファイルをインポートして使用できる (コマンドでBundleを作成した場合は、勝手にインポートの記述を追加してくれます。便利。)
# app/config/routing.yml
AcmeHelloBundle:
    resource: "@AcmeHelloBundle/Resources/config/routing.yml"
    prefix:   /

# src/Acme/HelloBundle/Resources/config/routing.yml
hello:
    pattern:  /hello/{name}
    defaults: { _controller: AcmeHelloBundle:Hello:index }


Controller の作成

routeに, /hello/{name} というパターンに対して AcmeStudyBundle:Hello:index が呼ばれるように設定する(詳細はドキュメント見てね!)

Routingの設定により、/hello/{name} でアクセスすると, AcmeStudyBundle の HelloController の indexAction が呼ばれる。

View の作成


最後に、アクションに対するビューを作成。どのビューが呼ばれるかは、indexActionに記述されている通り。
ちなみに、Twigはテンプレートの継承が可能なのでスゴイおもしろい!笑



以上が基本的な流れ。

0 コメント:

コメントを投稿

Share

Twitter Delicious Facebook Digg Stumbleupon Favorites More