Development

MyFirstSymfonyProjectJapanese (diff)

You must first sign up to be able to contribute.

Changes between Version 1 and Version 2 of MyFirstSymfonyProjectJapanese

Show
Ignore:
Author:
river.bright (IP: 221.16.52.46)
Timestamp:
02/09/07 22:11:35 (11 years ago)
Comment:

modify link ..

Legend:

Unmodified
Added
Removed
Modified
  • MyFirstSymfonyProjectJapanese

    v1 v2  
    11{{{ 
    22#!WikiMarkdown 
     3 
     4![こちら](http://develop.ddo.jp/symfony/book/jp/1.0/my_first_project_jp.html)の内容のコピーです。 
    35 
    46私の最初の symfony プロジェクト 
    4648![a congratulations page](http://www.symfony-project.com/images/tutorials/first_congrats.gif) 
    4749 
    48 別のフォルダーにsymfonyをインストールすることも、バーチャルホストやエイリアス設定のサーバーの設定を行ったウェブサーバーでセットアップすることもできます。symfony book には [symfony のインストール](installation.txt)、[プロジェクト作成](project_creation.txt)、そして[ファイル構造](file_structure.txt)についての詳細な説明が含まれています。 
     50別のフォルダーにsymfonyをインストールすることも、バーチャルホストやエイリアス設定のサーバーの設定を行ったウェブサーバーでセットアップすることもできます。symfony book には [symfony のインストール](http://www.symfony-project.com/content/book/page/installation.html)、[プロジェクト作成](http://www.symfony-project.com/content/book/page/project_creation.html)、そして[ファイル構造](http://www.symfony-project.com/content/book/page/file_structure.html)についての詳細な説明が含まれています。 
    4951 
    5052データモデルの初期化 
    7072        created_at: 
    7173 
    72 この設定ファイルは YAML 構文を利用しています。とてもシンプルな言語でXMLのようなツリー構造をインデントによって表現することができます。さらに、XMLより読み書きが速いです。たった1つ、インデントは意味を持っていてタブは禁止されているので、スペースをインデントとして使うことを覚えておいてください。YAMLについてとsymfonyの設定については[設定の章](configuration.txt)を参照してください。 
     74この設定ファイルは YAML 構文を利用しています。とてもシンプルな言語でXMLのようなツリー構造をインデントによって表現することができます。さらに、XMLより読み書きが速いです。たった1つ、インデントは意味を持っていてタブは禁止されているので、スペースをインデントとして使うことを覚えておいてください。YAMLについてとsymfonyの設定については[設定の章](http://www.symfony-project.com/content/book/page/configuration.html)を参照してください。 
    7375 
    7476このスキーマは weblog において2つのテーブルが必要とされている構造であるということを表しています。Post と Comment が生成される関連するクラスの名前です。ファイルを保存し、コマンドラインを開き、sf_sandbox/ ディレクトリで次のように入力してください。 
    7880>**注意**: symfonyコマンドを呼ぶときは プロジェクトのルート (sf_sandobx/) であることを確認してください。 
    7981 
    80 複数のクラスが sf_sandbox/lib/model/ ディレクトリに作成されます。 これらは オブジェクト-リレーションマッピングのクラスで、リレーションデータベースにSQLのクエリーを書かずにオブジェクト指向でアクセスすることができます。symfony は Propel ライブラリをこの目的のために利用しています。これらのオブジェクトを**モデル**と呼んでいます(詳細は[モデルの章](model.txt)を見てください)。 
     82複数のクラスが sf_sandbox/lib/model/ ディレクトリに作成されます。 これらは オブジェクト-リレーションマッピングのクラスで、リレーションデータベースにSQLのクエリーを書かずにオブジェクト指向でアクセスすることができます。symfony は Propel ライブラリをこの目的のために利用しています。これらのオブジェクトを**モデル**と呼んでいます(詳細は[モデルの章](http://www.symfony-project.com/content/book/page/model.html)を見てください)。 
    8183 
    8284ここで、コマンドラインで次のように入力してください。 
    8486    $ php symfony propel-build-sql 
    8587 
    86 lib.model.schema.sql ファイルが sf_sandbox/data/sql/ に作成されます。このSQLクエリは同じテーブル構造でデータベースを初期化するときに利用されます。コマンドラインやウェブインターフェースでMySQLにデータベースを作成することができます([modelの章](model.txt)に書かれてあります)。幸いにも、symfony の sandbox はシンプルなSQLiteファイルで動作するように構成されています。そのため、データベースの初期化は必要ありません。デフォルトで、sf_sandbox プロジェクトは sf_sandbox/data/ディレクトリに置かれている sandbox.db と呼ばれるデータベースを使います。SQLファイルに基づくテーブル構造を作成するために、次のように入力します。 
     88lib.model.schema.sql ファイルが sf_sandbox/data/sql/ に作成されます。このSQLクエリは同じテーブル構造でデータベースを初期化するときに利用されます。コマンドラインやウェブインターフェースでMySQLにデータベースを作成することができます([modelの章](http://www.symfony-project.com/content/book/page/model.html)に書かれてあります)。幸いにも、symfony の sandbox はシンプルなSQLiteファイルで動作するように構成されています。そのため、データベースの初期化は必要ありません。デフォルトで、sf_sandbox プロジェクトは sf_sandbox/data/ディレクトリに置かれている sandbox.db と呼ばれるデータベースを使います。SQLファイルに基づくテーブル構造を作成するために、次のように入力します。 
    8789 
    8890    $ php symfony propel-insert-sql 
    114116![http://www.symfony-project.com/images/tutorials/first_crud.gif](http://www.symfony-project.com/images/tutorials/first_crud.gif) 
    115117 
    116 より詳しい[足場](scaffolding.txt)についてと[symfony のプロジェクト構造](project_creation.txt)(プロジェクト、アプリケーション、モジュール)についての説明を見てください。 
     118より詳しい[足場](http://www.symfony-project.com/content/book/page/scaffolding.html)についてと[symfony のプロジェクト構造](http://www.symfony-project.com/content/book/page/project_creation.html)(プロジェクト、アプリケーション、モジュール)についての説明を見てください。 
    117119 
    118120>**注意**: 上記のURLで、メインスクリプト - symfonyではフロントコントローラーと呼んでます - の名前がindex.php から frontend_dev.php に変更されています。この2つのスクリプトは同じアプリケーション(frontend)へアクセスします。しかし、環境が異なります。frontend_dev.phpでは、**開発環境**のアプリケーションへアクセスすることができ、開発環境においては、画面右上にあるデバッグツールバーのような開発ツールが提供されていています。そういうわけで、各ページのレスポンスはindex.phpという**製品環境**のレスポンス速度が改良されているコントローラーを使うよりも多少遅いでしょう。もし製品環境を使いたいなら、URL中の frontend_dev.php/ を index.php/ で置き換えてください。しかし、変更を確認するまえに、キャッシュをクリアすることを忘れないでください。 
    119121 
    120 [環境についてのページ](configuration.txt)で詳細を見てください。 
     122[環境についてのページ](http://www.symfony-project.com/content/book/page/configuration.html)で詳細を見てください。 
    121123 
    122124レイアウトを修正 
    192194さぁ、あなたの新しいウェブアプリを使ってみましょう。新しいテストの投稿を行ってみたり、投稿記事にテストコメントをつけたりしてみましょう。 
    193195 
    194 [テンプレートの章](view.txt)と[設定の章](templating_configuration.txt)にさらに詳しい説明があります。 
     196[テンプレートの章](http://www.symfony-project.com/content/book/page/view.html)と[設定の章](http://www.symfony-project.com/content/book/page/templating_configuration.html)にさらに詳しい説明があります。 
    195197 
    196198アクションからテンプレートにデータの受け渡し 
    237239 
    238240うまく動いていますね。 
    239 アクションからテンプレートにリンクするための[名前の規則](view.txt)や[テキスト](templating_other_helpers.txt)や[日付のヘルパー](templating_i18n_helpers.txt)についてはそれぞれの章を参照してください。 
     241アクションからテンプレートにリンクするための[名前の規則](http://www.symfony-project.com/content/book/page/view.html)や[テキスト](http://www.symfony-project.com/content/book/page/templating_other_helpers.html)や[日付のヘルパー](http://www.symfony-project.com/content/book/page/templating_i18n_helpers.html)についてはそれぞれの章を参照してください。 
    240242 
    241243別のテーブルに関連するレコードを追加 
    299301ユーザーは新しいコメントを記事に追加することができ、その後に記事に戻ってくることができます。weblogが欲しかったでしょ? ほら、ここにweblogができました。 
    300302 
    301 アクションについては[アクションの章](controller.txt)をみてください。 
     303アクションについては[アクションの章](http://www.symfony-project.com/content/book/page/controller.html)をみてください。 
    302304 
    303305フォームのバリデーション 
    362364![http://www.symfony-project.com/images/tutorials/first_form_validation.gif](http://www.symfony-project.com/images/tutorials/first_form_validation.gif) 
    363365 
    364 詳細については[フォームバリデーションの章](validate_form.txt)を参照してください。 
     366詳細については[フォームバリデーションの章](http://www.symfony-project.com/content/book/page/validate_form.html)を参照してください。 
    365367 
    366368URLの表記を変更 
    433435![http://www.symfony-project.com/images/tutorials/first_routing.gif](http://www.symfony-project.com/images/tutorials/first_routing.gif) 
    434436 
    435 [スマートなURLについて](routing.txt)にさらに詳細があります。 
     437[スマートなURLについて](http://www.symfony-project.com/content/book/page/routing.html)にさらに詳細があります。 
    436438 
    437439フロントエンドをお掃除 
    468470    $ php symfony propel-init-admin backend comment Comment 
    469471 
    470 今回は[admin generator](generator.txt) を利用します。これはCRUDジェネレーターよりも多くの機能とカスタマイズを可能とします。 
     472今回は[admin generator](http://www.symfony-project.com/content/book/page/generator.html) を利用します。これはCRUDジェネレーターよりも多くの機能とカスタマイズを可能とします。 
    471473 
    472474フロントエンドアプリケーションのときと同じように、全体のナビゲーションのためにレイアウト(`apps/backend/templates/layout.php`)を編集します。 
    605607![http://www.symfony-project.com/images/tutorials/first_login.gif](http://www.symfony-project.com/images/tutorials/first_login.gif) 
    606608 
    607 詳細は[セキュリティの章](security.txt)を参照してください。 
     609詳細は[セキュリティの章](http://www.symfony-project.com/content/book/page/security.html)を参照してください。 
    608610 
    609611結論