2. Hello World
インストールが完了したので、実際に簡単なページを作ってみます。
以下の順番で作業を行います。
- バンドルの作成
- ルートの作成
- コントローラの作成
- テンプレートの作成
1) バンドルの作成
blogチュートリアル(3) バンドルの作成 | Symfony2 Blog チュートリアル
まずは、バンドルを作成します。
バンドルっていうのはある機能の塊をしめし、プロジェクトの小っちゃい版みたいな感じです。
何かを作るときは必ずバンドル内に作成することになります。
まず、以下のコマンドを実行します。
1 |
$ php app/console generate:bundle --namespace=Acme/HelloBundle --format=yml |
すると、会話形式で入力を求められるので適当に入力していきます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
$ php app/console generate:bundle --namespace=Acme/HelloBundle --format=yml Welcome to the Symfony2 bundle generator Your application code must be written in bundles. This command helps you generate them easily. Each bundle is hosted under a namespace (like Acme/Bundle/BlogBundle). The namespace should begin with a "vendor" name like your company name, your project name, or your client name, followed by one or more optional category sub-namespaces, and it should end with the bundle name itself (which must have Bundle as a suffix). See http://symfony.com/doc/current/cookbook/bundles/best_practices.html#index-1 for more details on bundle naming conventions. Use / instead of \ for the namespace delimiter to avoid any problem. Bundle namespace [Acme/HelloBundle]: In your code, a bundle is often referenced by its name. It can be the concatenation of all namespace parts but it's really up to you to come up with a unique name (a good practice is to start with the vendor name). Based on the namespace, we suggest AcmeHelloBundle. Bundle name [AcmeHelloBundle]: The bundle can be generated anywhere. The suggested default directory uses the standard conventions. Target directory [/home/hogehoge/public_html/symfony2/src]: Determine the format to use for the generated configuration. Configuration format (yml, xml, php, or annotation) [yml]: To help you getting started faster, the command can generate some code snippets for you. Do you want to generate the whole directory structure [no]? yes Summary before generation You are going to generate a "Acme\HelloBundle\AcmeHelloBundle" bundle in "/home/hogehoge/public_html/symfony2/src/" using the "yml" format. Do you confirm generation [yes]? Bundle generation Generating the bundle code: OK Checking that the bundle is autoloaded: OK Confirm automatic update of your Kernel [yes]? Enabling the bundle inside the Kernel: OK Confirm automatic update of the Routing [yes]? Importing the bundle routing resource: OK You can now start using the generated code! |
これでバンドルの作成は完了です!
1 |
$ php app/console generate:bundle --namespace=/ --format= |
作成するために実行した、symfony2コマンドの書式は上のような形式になります。