Commit f11c91ad by Alexander Makarov

Merge pull request #6791 from softark/docs-guide-ja-tutorial-i18n

Docs guide ja tutorial i18n [ci skip]
parents 23279faf 7b79166f
...@@ -165,7 +165,7 @@ RESTful ウェブサービス ...@@ -165,7 +165,7 @@ RESTful ウェブサービス
* [アプリケーションを一から構築する](tutorial-start-from-scratch.md) * [アプリケーションを一から構築する](tutorial-start-from-scratch.md)
* [コンソールコマンド](tutorial-console.md) * [コンソールコマンド](tutorial-console.md)
* [コアバリデータ](tutorial-core-validators.md) * [コアバリデータ](tutorial-core-validators.md)
* **翻訳中** [国際化](tutorial-i18n.md) * [国際化](tutorial-i18n.md)
* **翻訳中** [メール](tutorial-mailing.md) * **翻訳中** [メール](tutorial-mailing.md)
* **翻訳中** [パフォーマンスチューニング](tutorial-performance-tuning.md) * **翻訳中** [パフォーマンスチューニング](tutorial-performance-tuning.md)
* **翻訳中** [共有ホスト環境](tutorial-shared-hosting.md) * **翻訳中** [共有ホスト環境](tutorial-shared-hosting.md)
......
...@@ -91,6 +91,11 @@ $customer->email = 'jane@example.com'; ...@@ -91,6 +91,11 @@ $customer->email = 'jane@example.com';
$customer->save(); $customer->save();
``` ```
> Note|注意: 自明なことですが、カラム名が直接にアクティブレコードクラスの属性名になりますので、データベースの命名スキーマでアンダースコアを使用している場合はアンダースコアを持つ属性名になります。
> 例えば、`user_name` というカラムは、アクティブレコードのオブジェクトでは `$user->user_name` としてアクセスされることになります。
> コードスタイルが気になるのであれば、データベースの命名スキーマも camelCase を使用しなければなりません。
> しかしながら、camelCase の使用は要求されてはいません。Yii は他のどのような命名スタイルでも十分に動作します。
データベースに接続する データベースに接続する
---------------------- ----------------------
......
フィクスチャ フィクスチャ
============ ============
> Note|注意: この節はまだ執筆中です。
フィクスチャはテストの重要な部分です。 フィクスチャはテストの重要な部分です。
フィクスチャの主な目的は、テストを期待されている方法で繰り返して実行できるように、環境を固定された既知の状態に設定することです。 フィクスチャの主な目的は、テストを期待されている方法で繰り返して実行できるように、環境を固定された既知の状態に設定することです。
Yii は、フィクスチャを正確に定義して容易に使うことを可能にするフィクスチャフレームワークを提供しています。 Yii は、フィクスチャを正確に定義して容易に使うことを可能にするフィクスチャフレームワークを提供しています。
...@@ -42,6 +40,12 @@ class UserFixture extends ActiveFixture ...@@ -42,6 +40,12 @@ class UserFixture extends ActiveFixture
> [[yii\test\ActiveFixture::tableName]] プロパティまたは [[yii\test\ActiveFixture::modelClass]] プロパティを設定することによって、テーブルを指定することが出来ます。 > [[yii\test\ActiveFixture::tableName]] プロパティまたは [[yii\test\ActiveFixture::modelClass]] プロパティを設定することによって、テーブルを指定することが出来ます。
> 後者を使う場合は、`modelClass` によって指定される `ActiveRecord` クラスからテーブル名が取得されます。 > 後者を使う場合は、`modelClass` によって指定される `ActiveRecord` クラスからテーブル名が取得されます。
> Note|注意: [[yii\test\ActiveFixture]] は SQL データベースにのみ適しています。
> NoSQL データベースのためには、Yii は以下の `ActiveFixture` クラスを提供しています。
>
> - Mongo DB: [[yii\mongodb\ActiveFixture]]
> - Elasticsearch: [[yii\elasticsearch\ActiveFixture]] (バージョン 2.0.2 以降)
`ActiveFixture` フィクスチャのフィクスチャデータは通常は `FixturePath/data/TableName.php` として配置されるファイルで提供されます。 `ActiveFixture` フィクスチャのフィクスチャデータは通常は `FixturePath/data/TableName.php` として配置されるファイルで提供されます。
ここで `FixturePath` はフィクスチャクラスファイルを含むディレクトリを意味し、`TableName` はフィクスチャと関連付けられているテーブルの名前です。 ここで `FixturePath` はフィクスチャクラスファイルを含むディレクトリを意味し、`TableName` はフィクスチャと関連付けられているテーブルの名前です。
...@@ -92,6 +96,10 @@ class UserProfileFixture extends ActiveFixture ...@@ -92,6 +96,10 @@ class UserProfileFixture extends ActiveFixture
} }
``` ```
依存関係は、また、複数のフィクスチャが正しく定義された順序でロードされ、アンロードされることを保証します。
上記の例では、全ての外部キー参照が存在することを保証するために `UserFixture` は常に `UserProfileFixture` の前にロードされます。
また、同じ理由によって、`UserFixture` は常に `UserProfileFixture` がアンロードされた後でアンロードされます。
上記では、DB テーブルに関してフィクスチャを定義する方法を示しました。 上記では、DB テーブルに関してフィクスチャを定義する方法を示しました。
DB と関係しないフィクスチャ (例えば、何らかのファイルやディレクトリに関するフィクスチャ) を定義するためには、より汎用的な基底クラス [[yii\test\Fixture]] から拡張して、[[yii\test\Fixture::load()|load()]] と [[yii\test\Fixture::unload()|unload()]] のメソッドをオーバーライドすることが出来ます。 DB と関係しないフィクスチャ (例えば、何らかのファイルやディレクトリに関するフィクスチャ) を定義するためには、より汎用的な基底クラス [[yii\test\Fixture]] から拡張して、[[yii\test\Fixture::load()|load()]] と [[yii\test\Fixture::unload()|unload()]] のメソッドをオーバーライドすることが出来ます。
...@@ -232,7 +240,9 @@ data\ ...@@ -232,7 +240,9 @@ data\
Managing Fixtures Managing Fixtures
================= =================
// todo: this tutorial may be merged into test-fixture.md > Note: This section is under development.
>
> todo: this tutorial may be merged with the above part of test-fixtures.md
Fixtures are important part of testing. Their main purpose is to populate you with data that needed by testing Fixtures are important part of testing. Their main purpose is to populate you with data that needed by testing
different cases. With this data using your tests becoming more efficient and useful. different cases. With this data using your tests becoming more efficient and useful.
......
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