Commit 1a2e4b19 by Qiang Xue

Merge pull request #7030 from softark/docs-guide-ja-structure-reviewd

Docs guide ja structure reviewd and other updates [ci skip]
parents c0de03df d74c6f0f
...@@ -289,7 +289,7 @@ Yii のリリースに含まれている [コアバリデータ](tutorial-core-v ...@@ -289,7 +289,7 @@ Yii のリリースに含まれている [コアバリデータ](tutorial-core-v
```php ```php
/** /**
* @param string $attribute 現在検証されている属性 * @param string $attribute 現在検証されている属性
* @param array $params 規則に与えられる追加の「名前-値」のペア * @param mixed $params 規則に与えられる "params" の値
*/ */
function ($attribute, $params) function ($attribute, $params)
``` ```
......
...@@ -315,26 +315,26 @@ URL 隕丞援縺ッ縲√ヱ繧ソ繝シ繝ウ縺ョ荳ュ縺ァ `<ParamName:RgExp>` 縺ョ蠖「蠑上〒謖ョ壹& ...@@ -315,26 +315,26 @@ URL 隕丞援縺ッ縲√ヱ繧ソ繝シ繝ウ縺ョ荳ュ縺ァ `<ParamName:RgExp>` 縺ョ蠖「蠑上〒謖ョ壹&
```php ```php
[ [
'posts/<year:\d{4}>/<category>' => 'post/index',
'posts' => 'post/index', 'posts' => 'post/index',
'post/<id:\d+>' => 'post/view', 'post/<id:\d+>' => 'post/view',
'posts/<year:\d{4}>/<category>' => 'post/index',
] ]
``` ```
規則が URL 解析に使われる場合は、 規則が URL 解析に使われる場合は、
- `/index.php/posts` は、最初の規則を使って解析され、ルート `post/index` になります。 - `/index.php/posts` は、二番目の規則を使って解析され、ルート `post/index` になります。
- `/index.php/posts/2014/php` は、三番目の規則を使って解析され、ルートは `post/index`、`year` パラメータの値は 2014、そして、`category` パラメータの値は `php` となります。 - `/index.php/posts/2014/php` は、最初の規則を使って解析され、ルートは `post/index`、`year` パラメータの値は 2014、そして、`category` パラメータの値は `php` となります。
- `/index.php/post/100` は、二番目の規則を使って解析され、ルートが `post/view`、`id` パラメータの値が 100 となります。 - `/index.php/post/100` は、三番目の規則を使って解析され、ルートが `post/view`、`id` パラメータの値が 100 となります。
- `/index.php/posts/php` は、どのパターンにも合致しないため、[[yii\web\UrlManager::enableStrictParsing]] が true の場合は、[[yii\web\NotFoundHttpException]] を引き起こします。 - `/index.php/posts/php` は、どのパターンにも合致しないため、[[yii\web\UrlManager::enableStrictParsing]] が true の場合は、[[yii\web\NotFoundHttpException]] を引き起こします。
[[yii\web\UrlManager::enableStrictParsing]] が false (これが既定値です) の場合は、パス情報の部分である `posts/php` がルートとして返されることになります。 [[yii\web\UrlManager::enableStrictParsing]] が false (これが既定値です) の場合は、パス情報の部分である `posts/php` がルートとして返されることになります。
規則が URL 生成に使われる場合は、 規則が URL 生成に使われる場合は、
- `Url::to(['post/index'])` は、最初の規則を使って、`/index.php/posts` を生成します。 - `Url::to(['post/index'])` は、二番目の規則を使って、`/index.php/posts` を生成します。
- `Url::to(['post/index', 'year' => 2014, 'category' => 'php'])` は、三番目の規則を使って、`/index.php/posts/2014/php` を生成します。 - `Url::to(['post/index', 'year' => 2014, 'category' => 'php'])` は、最初の規則を使って、`/index.php/posts/2014/php` を生成します。
- `Url::to(['post/view', 'id' => 100])` は、二番目の規則を使って、`/index.php/post/100` を生成します。 - `Url::to(['post/view', 'id' => 100])` は、三番目の規則を使って、`/index.php/post/100` を生成します。
- `Url::to(['post/view', 'id' => 100, 'source' => 'ad'])` も、二番目の規則を使って、`/index.php/post/100?source=ad` を生成します。 - `Url::to(['post/view', 'id' => 100, 'source' => 'ad'])` も、三番目の規則を使って、`/index.php/post/100?source=ad` を生成します。
`source` パラメータは規則の中で指定されていないので、クエリパラメータとして、生成される URL に追加されます。 `source` パラメータは規則の中で指定されていないので、クエリパラメータとして、生成される URL に追加されます。
- `Url::to(['post/index', 'category' => 'php'])` は、どの規則も使わずに、`/index.php/post/index?category=php` を生成します。 - `Url::to(['post/index', 'category' => 'php'])` は、どの規則も使わずに、`/index.php/post/index?category=php` を生成します。
どの規則も当てはまらないため、URL は、単純に、ルートをパス情報とし、すべてのパラメータをクエリ文字列として追加して生成されます。 どの規則も当てはまらないため、URL は、単純に、ルートをパス情報とし、すべてのパラメータをクエリ文字列として追加して生成されます。
......
...@@ -36,7 +36,7 @@ Composer 縺ッ `composer self-update` 繧ウ繝槭Φ繝峨r螳溯。後@縺ヲ繧「繝繝繝 ...@@ -36,7 +36,7 @@ Composer 縺ッ `composer self-update` 繧ウ繝槭Φ繝峨r螳溯。後@縺ヲ繧「繝繝繝
Composer がインストールされたら、ウェブからアクセスできるフォルダで下記のコマンドを実行することによって Yii をインストールすることが出来ます。 Composer がインストールされたら、ウェブからアクセスできるフォルダで下記のコマンドを実行することによって Yii をインストールすることが出来ます。
composer global require "fxp/composer-asset-plugin:1.0.0-beta4" composer global require "fxp/composer-asset-plugin:1.0.0"
composer create-project --prefer-dist yiisoft/yii2-app-basic basic composer create-project --prefer-dist yiisoft/yii2-app-basic basic
最初のコマンドは [composer アセットプラグイン](https://github.com/francoispluchino/composer-asset-plugin/) をインストールします。 最初のコマンドは [composer アセットプラグイン](https://github.com/francoispluchino/composer-asset-plugin/) をインストールします。
......
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
また、`\Yii::$app->cache` を使って、[[yii\caching\Cache|プライマリキャッシュ]] を取得できます。 また、`\Yii::$app->cache` を使って、[[yii\caching\Cache|プライマリキャッシュ]] を取得できます。
アプリケーションコンポーネントは、上記の式を使ってアクセスされた最初の時に作成されます。 アプリケーションコンポーネントは、上記の式を使ってアクセスされた最初の時に作成されます。
二度目以降のアクセスでは、同じコンポーネントのインスタンスが返されます。 二度目以降のアクセスでは、同じコンポーネントインスタンスが返されます。
どのようなオブジェクトでも、アプリケーションコンポーネントとすることが可能です。 どのようなオブジェクトでも、アプリケーションコンポーネントとすることが可能です。
[アプリケーションの構成情報](structure-applications.md#application-configurations) の中で [[yii\base\Application::components]] プロパティを構成することによって、アプリケーションコンポーネントを登録することが出来ます。 [アプリケーションの構成情報](structure-applications.md#application-configurations) の中で [[yii\base\Application::components]] プロパティを構成することによって、アプリケーションコンポーネントを登録することが出来ます。
...@@ -50,7 +50,7 @@ ...@@ -50,7 +50,7 @@
多くの場合、必要なときにローカルなコンポーネントを作成して使用するだけで十分です。 多くの場合、必要なときにローカルなコンポーネントを作成して使用するだけで十分です。
## コンポーネントをブートストラップに含める<span id="bootstrapping-components"></span> ## コンポーネントをブートストラップに含める <span id="bootstrapping-components"></span>
上述のように、アプリケーションコンポーネントは最初にアクセスされた時に初めてインスタンスが作成されます。 上述のように、アプリケーションコンポーネントは最初にアクセスされた時に初めてインスタンスが作成されます。
リクエストの間に全くアクセスされなかった時は、インスタンスは作成されません。 リクエストの間に全くアクセスされなかった時は、インスタンスは作成されません。
...@@ -73,7 +73,7 @@ ...@@ -73,7 +73,7 @@
``` ```
## コアアプリケーションコンポーネント<span id="core-application-components"></span> ## コアアプリケーションコンポーネント <span id="core-application-components"></span>
Yii は固定の ID とデフォルトの構成情報を持つ一連の *コア* アプリケーションコンポーネントを定義しています。 Yii は固定の ID とデフォルトの構成情報を持つ一連の *コア* アプリケーションコンポーネントを定義しています。
例えば、[[yii\web\Application::request|request]] コンポーネントは、ユーザリクエストに関する情報を収集して、それを [ルート](runtime-routing.md) として解決するために使用されます。 例えば、[[yii\web\Application::request|request]] コンポーネントは、ユーザリクエストに関する情報を収集して、それを [ルート](runtime-routing.md) として解決するために使用されます。
...@@ -87,8 +87,7 @@ Yii 縺ョ繧「繝励Μ繧ア繝シ繧キ繝ァ繝ウ縺後Θ繝シ繧カ繝ェ繧ッ繧ィ繧ケ繝医r蜃ヲ逅譚・繧九 ...@@ -87,8 +87,7 @@ Yii 縺ョ繧「繝励Μ繧ア繝シ繧キ繝ァ繝ウ縺後Θ繝シ繧カ繝ェ繧ッ繧ィ繧ケ繝医r蜃ヲ逅譚・繧九
* [[yii\web\AssetManager|assetManager]]: アセットバンドルとアセットの発行を管理します。 * [[yii\web\AssetManager|assetManager]]: アセットバンドルとアセットの発行を管理します。
詳細は [アセット](structure-assets.md) の節を参照してください。 詳細は [アセット](structure-assets.md) の節を参照してください。
* [[yii\db\Connection|db]]: データベース接続を表します。これを通じて、DB クエリを実行することが出来ます。 * [[yii\db\Connection|db]]: データベース接続を表します。これを通じて、DB クエリを実行することが出来ます。
このコンポーネントを構成するときは、コンポーネントのクラスはもちろん、 このコンポーネントを構成するときは、コンポーネントのクラスはもちろん、[[yii\db\Connection::dsn]] のような必須のコンポーネントプロパティを指定しなければならないことに注意してください。
[[yii\db\Connection::dsn]] のような必須のコンポーネントプロパティを指定しなければならないことに注意してください。
詳細は [データアクセスオブジェクト](db-dao.md) の節を参照してください。 詳細は [データアクセスオブジェクト](db-dao.md) の節を参照してください。
* [[yii\base\Application::errorHandler|errorHandler]]: PHP のエラーと例外を処理します。 * [[yii\base\Application::errorHandler|errorHandler]]: PHP のエラーと例外を処理します。
詳細は [エラー処理](runtime-handling-errors.md) の節を参照してください。 詳細は [エラー処理](runtime-handling-errors.md) の節を参照してください。
...@@ -106,12 +105,12 @@ Yii 縺ョ繧「繝励Μ繧ア繝シ繧キ繝ァ繝ウ縺後Θ繝シ繧カ繝ェ繧ッ繧ィ繧ケ繝医r蜃ヲ逅譚・繧九 ...@@ -106,12 +105,12 @@ Yii 縺ョ繧「繝励Μ繧ア繝シ繧キ繝ァ繝ウ縺後Θ繝シ繧カ繝ェ繧ッ繧ィ繧ケ繝医r蜃ヲ逅譚・繧九
* [[yii\base\Application::request|request]]: エンドユーザから受信したリクエストを表現します。 * [[yii\base\Application::request|request]]: エンドユーザから受信したリクエストを表現します。
詳細は [リクエスト](runtime-requests.md) の節を参照してください。 詳細は [リクエスト](runtime-requests.md) の節を参照してください。
* [[yii\web\Session|session]]: セッション情報を表現します。 * [[yii\web\Session|session]]: セッション情報を表現します。
このコンポーネントは、[[yii\web\Application|ウェブアプリケーション]] においてのみ利用できます。. このコンポーネントは、[[yii\web\Application|ウェブアプリケーション]] においてのみ利用できます。
詳細は [セッションとクッキー](runtime-sessions-cookies.md) の節を参照してください。 詳細は [セッションとクッキー](runtime-sessions-cookies.md) の節を参照してください。
* [[yii\web\UrlManager|urlManager]]: URL の解析と生成をサポートします。 * [[yii\web\UrlManager|urlManager]]: URL の解析と生成をサポートします。
詳細は [ルーティング と URL 生成](runtime-routing.md) の節を参照してください。 詳細は [ルーティング と URL 生成](runtime-routing.md) の節を参照してください。
* [[yii\web\User|user]]: ユーザの認証情報を表現します。 * [[yii\web\User|user]]: ユーザの認証情報を表現します。
このコンポーネントは、[[yii\web\Application|ウェブアプリケーション]] においてのみ利用できます。. このコンポーネントは、[[yii\web\Application|ウェブアプリケーション]] においてのみ利用できます。
詳細は [認証](security-authentication.md) の節を参照してください。 詳細は [認証](security-authentication.md) の節を参照してください。
* [[yii\web\View|view]]: ビューのレンダリングをサポートします。 * [[yii\web\View|view]]: ビューのレンダリングをサポートします。
詳細は [ビュー](structure-views.md) の節を参照してください。 詳細は [ビュー](structure-views.md) の節を参照してください。
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
エントリスクリプトは主として次の仕事をします。 エントリスクリプトは主として次の仕事をします。
* グローバルな定数を定義する; * グローバルな定数を定義する
* [Composer のオートローダ](http://getcomposer.org/doc/01-basic-usage.md#autoloading) を登録する。 * [Composer のオートローダ](http://getcomposer.org/doc/01-basic-usage.md#autoloading) を登録する。
* [[Yii]] クラスファイルをインクルードする。 * [[Yii]] クラスファイルをインクルードする。
* アプリケーションの構成情報を読み出す。 * アプリケーションの構成情報を読み出す。
...@@ -47,7 +47,7 @@ $config = require(__DIR__ . '/../config/web.php'); ...@@ -47,7 +47,7 @@ $config = require(__DIR__ . '/../config/web.php');
## コンソールアプリケーション<span id="console-applications"></span> ## コンソールアプリケーション<span id="console-applications"></span>
同様に、下記がコンソールアプリケーションのエントリスクリプトです:le application: 同様に、下記がコンソールアプリケーションのエントリスクリプトです
```php ```php
#!/usr/bin/env php #!/usr/bin/env php
...@@ -84,16 +84,16 @@ exit($exitCode); ...@@ -84,16 +84,16 @@ exit($exitCode);
## 定数を定義する<span id="defining-constants"></span> ## 定数を定義する<span id="defining-constants"></span>
グローバルな定数を定義するには、エントリスクリプトが最善の場所です。 グローバルな定数を定義するには、エントリスクリプトが最善の場所です。
Yii は下記の三つの定数をサポートしています: Yii は下記の三つの定数をサポートしています
* `YII_DEBUG`: アプリケーションがデバッグモードで走るかどうかを定します。 * `YII_DEBUG`: アプリケーションがデバッグモードで走るかどうかを定します。
デバッグモードにおいては、アプリケーションはより多くのログ情報を保持し、例外が投げられたときに、より詳細なエラーのコールスタックを表示します。 デバッグモードにおいては、アプリケーションはより多くのログ情報を保持し、例外が投げられたときに、より詳細なエラーのコールスタックを表示します。
この理由により、デバッグモードは主として開発時に使用されるべきものとなります。 この理由により、デバッグモードは主として開発時に使用されるべきものとなります。
`YII_DEBUG` の既定値は false です。 `YII_DEBUG` の既定値は false です。
* `YII_ENV`: どういう環境でアプリケーションが走るかを規定します。 * `YII_ENV`: どういう環境でアプリケーションが走っているかを指定します。
詳細については、[構成情報](concept-configurations.md#environment-constants) の節で説明されます。 詳細は、[構成情報](concept-configurations.md#environment-constants) の節で説明されます。
`YII_ENV` の既定値は `'prod'`す。これはアプリケーションが本番環境で走ることを意味します。 `YII_ENV` の既定値は `'prod'`あり、アプリケーションが本番環境で走っていることを意味します。
* `YII_ENABLE_ERROR_HANDLER`: Yii によって提供されるエラーハンドラを有効にするかどうかを定します。 * `YII_ENABLE_ERROR_HANDLER`: Yii によって提供されるエラーハンドラを有効にするかどうかを定します。
この定数の既定値は true です。 この定数の既定値は true です。
定数を定義するときには、しばしば次のようなコードを用います。 定数を定義するときには、しばしば次のようなコードを用います。
...@@ -112,4 +112,4 @@ if (!defined('YII_DEBUG')) { ...@@ -112,4 +112,4 @@ if (!defined('YII_DEBUG')) {
明らかに前者の方が簡潔で理解しやすいでしょう。 明らかに前者の方が簡潔で理解しやすいでしょう。
PHP ファイルがインクルードされる時に定数の効力が生じるようにするために、定数の定義はエントリスクリプトの冒頭でなされるべきです 他のPHP ファイルがインクルードされる時に定数の効力が生じるようにするために、定数はエントリスクリプトの冒頭で定義されなければなりません
...@@ -10,8 +10,7 @@ MVC 以外にも、Yii のアプリケーションは下記の要素を持って ...@@ -10,8 +10,7 @@ MVC 以外にも、Yii のアプリケーションは下記の要素を持って
* [エントリスクリプト](structure-entry-scripts.md): エンドユーザから直接アクセスできる PHP スクリプトです。 * [エントリスクリプト](structure-entry-scripts.md): エンドユーザから直接アクセスできる PHP スクリプトです。
これはリクエスト処理サイクルを開始する役目を持っています。 これはリクエスト処理サイクルを開始する役目を持っています。
* [アプリケーション](structure-applications.md): グローバルにアクセス可能なオブジェクトであり、 * [アプリケーション](structure-applications.md): グローバルにアクセス可能なオブジェクトであり、アプリケーションコンポーネントを管理し、連携させて、リクエストに応えます。
アプリケーションコンポーネントを管理し、連携させて、リクエストに応えます。
* [アプリケーションコンポーネント](structure-application-components.md): アプリケーションと共に登録されたオブジェクトであり、リクエストに応えるための様々なサービスを提供します。 * [アプリケーションコンポーネント](structure-application-components.md): アプリケーションと共に登録されたオブジェクトであり、リクエストに応えるための様々なサービスを提供します。
* [モジュール](structure-modules.md): それ自身に完全な MVC を含む自己完結的なパッケージです。 * [モジュール](structure-modules.md): それ自身に完全な MVC を含む自己完結的なパッケージです。
アプリケーションは複数のモジュールとして組織することが出来ます。 アプリケーションは複数のモジュールとして組織することが出来ます。
......
...@@ -34,7 +34,7 @@ ...@@ -34,7 +34,7 @@
Composer がインストールされていれば、次のコマンドを使ってアプリケーションをインストールすることが出来ます。 Composer がインストールされていれば、次のコマンドを使ってアプリケーションをインストールすることが出来ます。
composer global require "fxp/composer-asset-plugin:1.0.0-beta4" composer global require "fxp/composer-asset-plugin:1.0.0"
composer create-project --prefer-dist yiisoft/yii2-app-advanced yii-application composer create-project --prefer-dist yiisoft/yii2-app-advanced yii-application
最初のコマンドは [composer asset plugin](https://github.com/francoispluchino/composer-asset-plugin/) をインストールします。 最初のコマンドは [composer asset plugin](https://github.com/francoispluchino/composer-asset-plugin/) をインストールします。
......
...@@ -54,6 +54,6 @@ Yii の新しいアプリケーションテンプレートを作成するのに ...@@ -54,6 +54,6 @@ Yii の新しいアプリケーションテンプレートを作成するのに
これで、あなたのテンプレートを使ってプロジェクトを作成することが出来ます。 これで、あなたのテンプレートを使ってプロジェクトを作成することが出来ます。
``` ```
composer global require "fxp/composer-asset-plugin:1.0.0-beta4" composer global require "fxp/composer-asset-plugin:1.0.0"
composer create-project --prefer-dist --stability=dev mysoft/yii2-app-coolone new-project composer create-project --prefer-dist --stability=dev mysoft/yii2-app-coolone new-project
``` ```
...@@ -77,8 +77,8 @@ Yii は数多くの優れた機能を提供していますので、サードパ ...@@ -77,8 +77,8 @@ Yii は数多くの優れた機能を提供していますので、サードパ
サードパーティのシステムが Composer を使って依存を管理している場合は、単に下記のコマンドを実行すれば Yii をインストールすることが出来ます。 サードパーティのシステムが Composer を使って依存を管理している場合は、単に下記のコマンドを実行すれば Yii をインストールすることが出来ます。
composer global require "fxp/composer-asset-plugin:1.0.0-beta4" composer global require "fxp/composer-asset-plugin:1.0.0"
composer require "yiisoft/yii2:*" composer require yiisoft/yii2
composer install composer install
最初のコマンドは [composer アセットプラグイン](https://github.com/francoispluchino/composer-asset-plugin/) をインストールします。 最初のコマンドは [composer アセットプラグイン](https://github.com/francoispluchino/composer-asset-plugin/) をインストールします。
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment