mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-21 00:54:53 +08:00
Merge pull request #8586 from yiijan/docs-ja-0528
[docs] ja updated [ci skip]
This commit is contained in:
@@ -192,6 +192,6 @@ RESTful ウェブサービス
|
||||
------
|
||||
|
||||
* [概要](helper-overview.md)
|
||||
* [ArrayHelper](helper-array.md)
|
||||
* [Html](helper-html.md)
|
||||
* [Url](helper-url.md)
|
||||
* [配列ヘルパ](helper-array.md)
|
||||
* [Html ヘルパ](helper-html.md)
|
||||
* [Url ヘルパ](helper-url.md)
|
||||
|
||||
@@ -65,7 +65,7 @@ setter なしの getter で定義されたプロパティは、 *読み取り専
|
||||
getter と setter で定義されたプロパティには、いくつかの特別なルールと制限があります:
|
||||
|
||||
* この種のプロパティでは、名前の *大文字と小文字を区別しません* 。たとえば、 `$object->label` と `$object->Label` は同じです。
|
||||
これは、PHPのメソッド名が大文字と小文字を区別しないためです。
|
||||
これは、PHP のメソッド名が大文字と小文字を区別しないためです。
|
||||
* この種のプロパティの名前と、クラスのメンバ変数の名前とが同じである場合、後者が優先されます。
|
||||
たとえば、上記の `Foo` クラスがもしメンバ変数 `label` を持っているとすると、`$object->label = 'abc'`
|
||||
という代入は *メンバ変数の* `label` に作用することになり、その行で `setLabel()` setter メソッドは呼び出されなくなります。
|
||||
@@ -75,4 +75,3 @@ getter と setter で定義されたプロパティには、いくつかの特
|
||||
|
||||
このガイドの冒頭で説明した問題に戻ると、 `label` に値が代入されているあらゆる箇所で `trim()` を呼ぶのではなく、もう `setLabel()` という setter の内部だけで `trim()` を呼べば済むのです。
|
||||
さらに、新しい要求でラベルの先頭を大文字にする必要が発生しても、他のいっさいのコードに触れることなく、すぐに `setLabel()` メソッドを変更することができます。一箇所の変更は、すべての `label` への代入に普遍的に作用します。
|
||||
|
||||
|
||||
@@ -1,15 +1,14 @@
|
||||
サービスロケータ
|
||||
===============
|
||||
================
|
||||
|
||||
サービスロケータは、アプリケーションが必要とする可能性のある各種のサービス (またはコンポーネント) を提供する方法を知っているオブジェクトです。
|
||||
サービスロケータ内では、各コンポーネントは単一のインスタンスとして存在し、IDによって一意に識別されます。
|
||||
あなたは、このIDを使用してサービスロケータからコンポーネントを取得できます。
|
||||
サービスロケータ内では、各コンポーネントは単一のインスタンスとして存在し、ID によって一意に識別されます。
|
||||
あなたは、この ID を使用してサービスロケータからコンポーネントを取得できます。
|
||||
|
||||
Yii では、サービスロケータは単純に [[yii\di\ServiceLocator]] のインスタンス、または子クラスのインスタンスです。
|
||||
|
||||
Yii の中で最も一般的に使用されるサービスロケータは、 *アプリケーション* オブジェクトで、 `\Yii::$app`
|
||||
を通じてアクセスできます。それが提供するサービスは、 *アプリケーションコンポーネント* と呼ばれ、それは `request` 、
|
||||
`response`、 `urlManager` のようなコンポーネントです。あなたはサービスロケータによって提供される機能を通じて、
|
||||
Yii の中で最も一般的に使用されるサービスロケータは、`\Yii::$app` を通じてアクセスできる *アプリケーション* オブジェクトです。これが提供するサービスは、 *アプリケーションコンポーネント* と呼ばれる `request` 、
|
||||
`response`、 `urlManager` などのコンポーネントです。あなたはサービスロケータによって提供される機能を通じて、
|
||||
簡単に、これらのコンポーネントを構成、あるいは独自の実装に置き換え、といったことができます。
|
||||
|
||||
アプリケーションオブジェクトの他に、各モジュールオブジェクトもまたサービスロケータです。
|
||||
@@ -56,7 +55,7 @@ $cache = $locator->cache;
|
||||
それを返します。後でそのコンポーネントが再度アクセスされた場合、サービスロケータは同じインスタンスを返します。
|
||||
|
||||
[[yii\di\ServiceLocator::has()]] を使って、コンポーネント ID がすでに登録されているかをチェックできます。
|
||||
無効なIDで [[yii\di\ServiceLocator::get()]] を呼び出した場合、例外がスローされます。
|
||||
無効な ID で [[yii\di\ServiceLocator::get()]] を呼び出した場合、例外がスローされます。
|
||||
|
||||
サービスロケータは多くの場合、 [構成情報](concept-configurations.md) で作成されるため、
|
||||
[[yii\di\ServiceLocator::setComponents()|components]] という名前の書き込み可能プロパティが提供されています。
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
1. Tim が新しいマイグレーション (例えば、新しいテーブルを作成したり、カラムの定義を変更したりなど) を作る。
|
||||
2. Tim が新しいマイグレーションをソースコントロールシステム (例えば Git や Mercurial) にコミットする。
|
||||
3. Doug がソースコントロールシステムから自分のレポジトリを更新して新しいマイグレーションを受け取る。
|
||||
4. Doug がマイグレーションを彼のローカルの開発用データベースに適用して、Tim が行った変更を反映するように自分のデータベースの同期を取る。
|
||||
4. Doug がマイグレーションを彼のローカルの開発用データベースに適用して、自分のデータベースの同期を取り、Tim が行った変更を反映する。
|
||||
|
||||
そして、次の一連のステップは、本番環境でデータベースマイグレーションとともに新しいリリースを配備する方法を示すものです。
|
||||
|
||||
@@ -18,13 +18,13 @@
|
||||
2. Scott は本番サーバでソースコードをリリースタグまで更新する。
|
||||
3. Scott は本番のデータベースに対して累積したデータベースマイグレーションを全て適用する。
|
||||
|
||||
Yii は一連のマイグレーションコマンドラインツールを提供しており、以下の機能をサポートしています。
|
||||
Yii は一連のマイグレーションコマンドラインツールを提供して、以下の機能をサポートします。
|
||||
|
||||
* 新しいマイグレーションの作成
|
||||
* マイグレーションの適用
|
||||
* マイグレーションの取消
|
||||
* マイグレーションの再適用
|
||||
* マイグレーションの履歴と状態の閲覧
|
||||
* マイグレーションの履歴と状態の表示
|
||||
|
||||
これらのツールは、全て、`yii migrate` コマンドからアクセスすることが出来ます。
|
||||
この節では、これらのツールを使用して、さまざまなタスクをどうやって達成するかを詳細に説明します。
|
||||
@@ -51,7 +51,7 @@ yii migrate/create create_news_table
|
||||
> Note|注意: この `name` 引数は、生成されるマイグレーションクラス名の一部として使用されますので、アルファベット、数字、および/または、アンダースコアだけを含むものでなければなりません。
|
||||
|
||||
上記のコマンドは、`m150101_185401_create_news_table.php` という名前の新しい PHP クラスファイルを `@app/migrations` ディレクトリに作成します。
|
||||
このファイルは、主として、`m150101_185401_create_news_table` というマイグレーションクラスを宣言するためのもので、次のようなスケルトンコードを含んでいます。
|
||||
このファイルは次のようなコードを含み、主として、スケルトンコードを持った `m150101_185401_create_news_table` というマイグレーションクラスを宣言するためのものす。
|
||||
|
||||
```php
|
||||
<?php
|
||||
@@ -210,7 +210,7 @@ class m150101_185401_create_news_table extends Migration
|
||||
* [[yii\db\Migration::dropIndex()|dropIndex()]]: インデックスを削除
|
||||
|
||||
> Info|情報: [[yii\db\Migration]] は、データベースクエリメソッドを提供しません。
|
||||
これは、データベースからデータを取得することについては、通常、追加のメッセージを表示する必要がないからです。
|
||||
これは、通常、データベースからのデータ取得については、メッセージを追加して表示する必要がないからです。
|
||||
更にまた、複雑なクエリを構築して実行するためには、強力な [クエリビルダ](db-query-builder.md) を使うことが出来るからです。
|
||||
|
||||
|
||||
@@ -234,13 +234,13 @@ yii migrate
|
||||
|
||||
時として、利用できる全てのマイグレーションではなく、一つまたは数個の新しいマイグレーションだけを適用したい場合があります。
|
||||
コマンドを実行するときに、適用したいマイグレーションの数を指定することによって、そうすることが出来ます。
|
||||
例えば、次のコマンドは、利用できるマイグレーションのうち、次の三個を適用しようとするものです。
|
||||
例えば、次のコマンドは、次の三個の利用できるマイグレーションを適用しようとするものです。
|
||||
|
||||
```
|
||||
yii migrate 3
|
||||
```
|
||||
|
||||
また、このマイグレーションまでデータベースに適用したいという特定のマイグレーションを明示的に指定することも出来ます。
|
||||
また、そのマイグレーションまでをデータベースに適用するという、特定のマイグレーションを明示的に指定することも出来ます。
|
||||
そのためには、`migrate/to` コマンドを、次のどれかの形式で使います。
|
||||
|
||||
```
|
||||
@@ -261,8 +261,8 @@ yii migrate/to 1392853618 # UNIX タイムスタンプ
|
||||
|
||||
|
||||
```
|
||||
yii migrate/down # 最近に適用されたマイグレーションを取り消す
|
||||
yii migrate/down 3 # 最近に適用された三個のマイグレーションを取り消す
|
||||
yii migrate/down # 最近に適用されたマイグレーション一個を取り消す
|
||||
yii migrate/down 3 # 最近に適用されたマイグレーション三個を取り消す
|
||||
```
|
||||
|
||||
> Note|注意: 全てのマイグレーションが取り消せるとは限りません。
|
||||
@@ -275,13 +275,12 @@ yii migrate/down 3 # 最近に適用された三個のマイグレーション
|
||||
これは次のコマンドによって実行することが出来ます。
|
||||
|
||||
```
|
||||
yii migrate/redo # 最後に適用されたマイグレーションを再適用する
|
||||
yii migrate/redo # 最後に適用された一個のマイグレーションを再適用する
|
||||
yii migrate/redo 3 # 最後に適用された三個のマイグレーションを再適用する
|
||||
```
|
||||
|
||||
> Note|注意: マイグレーションが取り消し不可能な場合は、それを再適用することは出来ません。
|
||||
|
||||
[kihara]
|
||||
|
||||
## マイグレーションをリスト表示する <span id="listing-migrations"></span>
|
||||
|
||||
@@ -301,7 +300,7 @@ yii migrate/new all # 適用可能な全てのマイグレーションを表
|
||||
## マイグレーション履歴を修正する <span id="modifying-migration-history"></span>
|
||||
|
||||
時として、実際にマイグレーションを適用したり取り消したりするのではなく、データベースが特定のマイグレーションまでアップグレードされたとマークしたいだけ、という場合があります。
|
||||
このようなことがよく起るのは、データベースを手作業で特定の状態に変更した後に、その変更のための一つまたは複数のマイグレーションを記録はするが適用はしたくない、という場合です。
|
||||
このようなことがよく起るのは、データベースを手作業で特定の状態に変更した後に、その変更のための一つまたは複数のマイグレーションを記録はするが再度適用はしたくない、という場合です。
|
||||
次のコマンドでこの目的を達することが出来ます。
|
||||
|
||||
```
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
ArrayHelper
|
||||
===========
|
||||
配列ヘルパ
|
||||
==========
|
||||
|
||||
[PHP の充実した配列関数](http://php.net/manual/ja/book.array.php) への追加として、Yii の配列ヘルパは、配列をさらに効率的に扱うことを可能にするスタティックなメソッドを提供しています。
|
||||
|
||||
|
||||
## 値を取得する <span id="getting-values"></span>
|
||||
|
||||
配列、オブジェクト、またはその両方から成る複雑な構造から標準的な PHP を使って値を取得することは、何度も繰り返さねばならない面倒くさい仕事です。
|
||||
配列、オブジェクト、またはその両方から成る複雑な構造から標準的な PHP を使って値を取得することは、非常に面倒くさい仕事です。
|
||||
最初に `isset` でキーの存在をチェックしなければならず、次に、キーが存在していれば値を取得し、存在していなければ、デフォルト値を提供しなければなりません。
|
||||
|
||||
```php
|
||||
@@ -264,7 +264,7 @@ $decoded = ArrayHelper::htmlDecode($data);
|
||||
|
||||
```php
|
||||
$posts = Post::find()->limit(10)->all();
|
||||
$data = ArrayHelper::toArray($post, [
|
||||
$data = ArrayHelper::toArray($posts, [
|
||||
'app\models\Post' => [
|
||||
'id',
|
||||
'title',
|
||||
|
||||
@@ -25,10 +25,10 @@ echo Html::encode('Test > test');
|
||||
|
||||
以下のコアヘルパクラスが Yii のリリースにおいて提供されています。
|
||||
|
||||
- [ArrayHelper](helper-array.md)
|
||||
- [配列ヘルパ](helper-array.md)
|
||||
- Console
|
||||
- FileHelper
|
||||
- [Html](helper-html.md)
|
||||
- [Html ヘルパ](helper-html.md)
|
||||
- HtmlPurifier
|
||||
- Image
|
||||
- Inflector
|
||||
@@ -36,7 +36,7 @@ echo Html::encode('Test > test');
|
||||
- Markdown
|
||||
- Security
|
||||
- StringHelper
|
||||
- [Url](helper-url.md)
|
||||
- [Url ヘルパ](helper-url.md)
|
||||
- VarDumper
|
||||
|
||||
|
||||
|
||||
@@ -16,9 +16,9 @@ $absoluteHomeUrl = Url::home(true);
|
||||
$httpsAbsoluteHomeUrl = Url::home('https');
|
||||
```
|
||||
|
||||
パラメータが渡されない場合は、相対 URL が生成されます。
|
||||
`true` を渡すと、現在のスキーマの絶対 URL を取得することが出来ます。
|
||||
または、スキーマを明示的に指定して (`http`, `https`) 絶対 URL を取得することも出来ます。
|
||||
パラメータが渡されない場合は、生成される URL は相対 URL になります。
|
||||
パラメータとして `true` を渡せば、現在のスキーマの絶対 URL を取得することが出来ます。
|
||||
または、スキーマ (`http`, `https`) を明示的に指定しても構いません。
|
||||
|
||||
現在のリクエストのベース URL を取得するためには、次のようにします。
|
||||
|
||||
|
||||
@@ -50,14 +50,14 @@ $form = ActiveForm::begin([
|
||||
<?php ActiveForm::end() ?>
|
||||
```
|
||||
|
||||
上記のコードでは、[[yii\widgets\ActiveForm::begin()|ActiveForm::begin()]] がフォームのインスタンスを作成するだけでなく、フォームの開始をマークしています。
|
||||
上記のコードでは、[[yii\widgets\ActiveForm::begin()|ActiveForm::begin()]] がフォームのインスタンスを作成するとともに、フォームの開始をマークしています。
|
||||
[[yii\widgets\ActiveForm::begin()|ActiveForm::begin()]] と [[yii\widgets\ActiveForm::end()|ActiveForm::end()]] の間に置かれた全てのコンテントが HTML の `<form>` タグによって囲まれます。
|
||||
どのウィジェットでも同じですが、ウィジェットをどのように構成すべきかに関するオプションを指定するために、`begin` メソッドに配列を渡すことが出来ます。
|
||||
この例では、追加の CSS クラスと要素を特定するための ID が渡されて、`<form>` の開始タグに適用されています。
|
||||
利用できるオプションはすべて [[yii\widgets\ActiveForm]] の API ドキュメントに記されていますので参照してください。
|
||||
利用できるオプションの全ては [[yii\widgets\ActiveForm]] の API ドキュメントに記されていますので参照してください。
|
||||
|
||||
フォームの中では、フォームの要素を作成するために、ActiveForm ウィジェットの [[yii\widgets\ActiveForm::field()|ActiveForm::field()]] メソッドが呼ばれています。
|
||||
これは、フォームの要素だけでなく、そのラベルも作成し、適用できる JavaScript の検証メソッドがあれば、それも追加します。
|
||||
このメソッドは、フォームの要素だけでなく、そのラベルも作成し、適用できる JavaScript の検証メソッドがあれば、それも追加します。
|
||||
[[yii\widgets\ActiveForm::field()|ActiveForm::field()]] メソッドは、[[yii\widgets\ActiveField]] のインスタンスを返します。
|
||||
このメソッドの呼び出し結果を直接にエコーすると、結果は通常の (text の) インプットになります。
|
||||
このメソッドの呼び出しに追加の [[yii\widgets\ActiveField|ActiveField]] のメソッドをチェーンして、出力結果をカスタマイズすることが出来ます。
|
||||
@@ -90,7 +90,7 @@ echo $form->field($model, 'items[]')->checkboxList(['a' => 'Item A', 'b' => 'Ite
|
||||
フォームに HTML タグを追加するためには、素の HTML を使うか、または、上記の例の [[yii\helpers\Html::submitButton()|Html::submitButton()]] のように、[[yii\helpers\Html|Html]] ヘルパクラスのメソッドを使うことが出来ます。
|
||||
|
||||
> Tip|ヒント: あなたのアプリケーションで Twitter Bootstrap CSS を使っている場合は、[[yii\widgets\ActiveForm]] の代りに [[yii\bootstrap\ActiveForm]] を使うのが良いでしょう。
|
||||
> これは ActiveForm クラスの拡張であり、bootstrap CSS フレームワークで使用するための追加のスタイルをサポートしています。
|
||||
> 後者は前者の拡張であり、bootstrap CSS フレームワークで使用するための追加のスタイルをサポートしています。
|
||||
|
||||
> tip|ヒント: 必須フィールドをアスタリスク付きのスタイルにするために、次の CSS を使うことが出来ます。
|
||||
>
|
||||
|
||||
@@ -234,7 +234,7 @@ use yii\data\BaseDataProvider;
|
||||
class CsvDataProvider extends BaseDataProvider
|
||||
{
|
||||
/**
|
||||
* @var 読み出す CSV ファイルの名前
|
||||
* @var string 読み出す CSV ファイルの名前
|
||||
*/
|
||||
public $filename;
|
||||
|
||||
|
||||
@@ -86,7 +86,7 @@ $file = $theme->getPath('img/logo.gif');
|
||||
|
||||
## テーマの継承 <span id="theme-inheritance"></span>
|
||||
|
||||
場合によっては、基本的なルックアンドフィールを含むアプリケーションの基本テーマを定義しておいて、現在の祝日に基づいて少しだけルックアンドフィールを変更したい、ということがあるかもしれません。
|
||||
場合によっては、基本的なルックアンドフィールを含むアプリケーションの基本テーマを定義しておいて、現在の祝日に基づいてルックアンドフィールを少し変更したい、ということがあるかもしれません。
|
||||
テーマの継承を使ってこの目的を達することが出来ます。
|
||||
テーマの継承は、一つのビューパスを複数のターゲットに割り付けることによって設定することが出来ます。
|
||||
例えば、
|
||||
@@ -100,6 +100,6 @@ $file = $theme->getPath('img/logo.gif');
|
||||
]
|
||||
```
|
||||
|
||||
この場合、ビュー `@app/views/site/index.php` には、どちらのテーマファイルが存在するかに従って、`@app/themes/christmas/site/index.php` または `@app/themes/basic/site/index.php` というテーマが適用されます。
|
||||
この場合、ビュー `@app/views/site/index.php` には、どちらのテーマファイルが存在するかに従って、`@app/themes/christmas/site/index.php` か `@app/themes/basic/site/index.php` か、どちらかのテーマが適用されます。
|
||||
テーマファイルが両方とも存在する場合は、最初のものが優先されます。
|
||||
実際の場面では、ほとんどのテーマビューファイルを `@app/themes/basic` に保管し、その中のいくつかを `@app/themes/christmas` でカスタマイズすることになるでしょう。
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
エラー処理
|
||||
==========
|
||||
|
||||
Yii は、エラー処理を従来よりはるかに快適な経験にしてくれる、内臓の [[yii\web\ErrorHandler|エラーハンドラ]] を持っています。
|
||||
Yii が内蔵している [[yii\web\ErrorHandler|エラーハンドラ]] は、エラー処理を従来よりはるかに快適な経験にしてくれます。
|
||||
具体的には、Yii のエラーハンドラはエラー処理をより良くするために、次のことを行います。
|
||||
|
||||
* 致命的でない全ての PHP エラー (警告や通知) は捕捉可能な例外に変換されます。
|
||||
* 例外と致命的な PHP エラーは、デバッグモードでは、詳細なコールスタック情報とソースコード行とともに表示されます。
|
||||
* 例外および致命的 PHP エラーは、デバッグモードでは、詳細なコールスタック情報とソースコード行とともに表示されます。
|
||||
* エラーを表示するために専用の [コントローラアクション](structure-controllers.md#actions) を使うことがサポートされています。
|
||||
* さまざまなエラーレスポンス形式をサポートしています。
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
通常は、識別子 (ユーザ名やメールアドレスなど) と秘密のトークン (パスワードやアクセストークンなど) を使って、ユーザがそうであると主張する通りのユーザであるか否かを判断します。
|
||||
認証がログイン機能の基礎となります。
|
||||
|
||||
Yii はログインをサポートするさまざまなコンポーネントを結び付ける認証フレームワークを提供しています。
|
||||
Yii はさまざまなコンポーネントを結び付けてログインをサポートする認証フレームワークを提供しています。
|
||||
このフレームワークを使用するために、あなたは主として次の仕事をする必要があります。
|
||||
|
||||
* [[yii\web\User|user]] アプリケーションコンポーネントを構成する。
|
||||
|
||||
@@ -54,7 +54,7 @@ class EntryForm extends Model
|
||||
上記で宣言されている検証規則は次のことを述べています。
|
||||
|
||||
* `name` と `email` は、ともに値を要求される
|
||||
* `email` のデータは構文的に正当なメールアドレスでなければならない
|
||||
* `email` のデータは構文的に有効なメールアドレスでなければならない
|
||||
|
||||
ユーザによって入力されたデータを `EntryForm` オブジェクトに投入した後、[[yii\base\Model::validate()|validate()]] を呼んでデータ検証ルーチンを始動することが出来ます。
|
||||
データ検証が失敗すると [[yii\base\Model::hasErrors|hasErrors]] プロパティが true に設定されます。
|
||||
@@ -178,7 +178,7 @@ use yii\widgets\ActiveForm;
|
||||
試してみる <span id="trying-it-out"></span>
|
||||
----------
|
||||
|
||||
どのように動作するかを見るために、ブラウザで下記の URL をアクセスしてください。
|
||||
どのように動作するかを見るために、ブラウザで下記の URL にアクセスしてください。
|
||||
|
||||
```
|
||||
http://hostname/index.php?r=site/entry
|
||||
|
||||
@@ -89,7 +89,7 @@ Composer がインストールされたら、ウェブからアクセスでき
|
||||
インストールを検証する <span id="verifying-installation"></span>
|
||||
----------------------
|
||||
|
||||
インストール完了後、インストールされた Yii アプリケーションにブラウザを使って下記の URL でアクセスすることが出来ます。
|
||||
インストール完了後、下記の URL によって、インストールされた Yii アプリケーションにブラウザを使ってアクセスすることが出来ます。
|
||||
|
||||
```
|
||||
http://localhost/basic/web/index.php
|
||||
|
||||
@@ -171,20 +171,17 @@ class FontAwesomeAsset extends AssetBundle
|
||||
public $css = [
|
||||
'css/font-awesome.min.css',
|
||||
];
|
||||
|
||||
public function init()
|
||||
{
|
||||
parent::init();
|
||||
$this->publishOptions['beforeCopy'] = function ($from, $to) {
|
||||
$dirname = basename(dirname($from));
|
||||
return $dirname === 'fonts' || $dirname === 'css';
|
||||
};
|
||||
}
|
||||
public $publishOptions = [
|
||||
'only' => [
|
||||
'fonts/',
|
||||
'css/',
|
||||
]
|
||||
],
|
||||
}
|
||||
```
|
||||
|
||||
上記の例は、["fontawesome" パッケージ](http://fontawesome.io/) のためのアセットバンドルを定義するものです。
|
||||
`beforeCopy` という発行オプションを指定して、`fonts` と `css` サブディレクトリだけが発行されるようにしています。
|
||||
発行オプション `only` を指定して、`fonts` と `css` サブディレクトリだけが発行されるようにしています。
|
||||
|
||||
|
||||
### Bower と NPM のアセット <span id="bower-npm-assets"></span>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
これは、ビジネスのデータ、規則、ロジックを表現するオブジェクトです。
|
||||
|
||||
モデルクラスは、[[yii\base\Model]] またはその子クラスを拡張することによって作成することが出来ます。
|
||||
基底クラス [[yii\base\Model]] は、次のように、数多くの有用な機能をサポートしています。
|
||||
基底クラス [[yii\base\Model]] は、次のような数多くの有用な機能をサポートしています。
|
||||
|
||||
* [属性](#attributes): ビジネスデータを表現します。通常のオブジェクトプロパティや配列要素のようにしてアクセスすることが出来ます。
|
||||
* [属性のラベル](#attribute-labels): 属性の表示ラベルを指定します。
|
||||
@@ -16,7 +16,7 @@
|
||||
`Model` クラスは、[アクティブレコード](db-active-record.md) のような、更に高度なモデルの基底クラスでもあります。
|
||||
それらの高度なモデルについての詳細は、関連するドキュメントを参照してください。
|
||||
|
||||
> Info|情報: あなたのモデルクラスの基底として [[yii\base\Model]] を使うことが要求されている訳ではありません。
|
||||
> Info|情報: あなたのモデルクラスの基底クラスとして [[yii\base\Model]] を使うことが要求されている訳ではありません。
|
||||
しかしながら、Yii のコンポーネントの多くが [[yii\base\Model]] をサポートするように作られていますので、通常は [[yii\base\Model]] がモデルの基底クラスとして推奨されます。
|
||||
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
テストはソフトウェア開発の重要な部分です。
|
||||
気付いているか否かにかかわらず、私たちは継続的にテストをしています。
|
||||
例えば、PHP でクラスを書くとき、私たちはステップごとにデバッグしたり、または単純に echo 文や die 文を使ったりして、実装が最初の計画通りに動作することを検証します。
|
||||
ウェブアプリケーションの場合は、何らかのテストデータをフォームに入力して、ページがユーザと期待通りの相互作用をすることを確認します。
|
||||
ウェブアプリケーションの場合は、何らかのテストデータをフォームに入力して、ページが期待通りにユーザと相互作用をすることを確認します。
|
||||
|
||||
テストを実行するプロセスを自動化して、何かを検証する必要があるときは、いつでも、それを代行してくれるコードを呼び出すだけでよいようにすることが出来ます。
|
||||
結果が計画したものと合致することを検証するコードがテストと呼ばれ、それを作成して更に実行するプロセスがテスト自動化として知られています。
|
||||
|
||||
@@ -55,7 +55,7 @@ public function rules()
|
||||
- `caseSensitive`: 検証コードの比較で大文字と小文字を区別するかどうか。デフォルト値は false。
|
||||
- `captchaAction`: CAPTCHA 画像を表示する [[yii\captcha\CaptchaAction|CAPTCHA アクション]] に対応する [ルート](structure-controllers.md#routes)。デフォルト値は `'site/captcha'`。
|
||||
- `skipOnEmpty`: 入力値が空のときに検証をスキップできるかどうか。デフォルト値は false で、入力が必須であることを意味します。
|
||||
|
||||
|
||||
|
||||
## [[yii\validators\CompareValidator|compare]] <span id="compare"></span>
|
||||
|
||||
@@ -108,7 +108,7 @@ public function rules()
|
||||
- `timestampAttribute`: このバリデータが、入力された日付/時刻から変換した UNIX タイムスタンプを代入することが出来る属性の名前。
|
||||
これは、検証される属性と同じ属性であってもかまいません。
|
||||
その場合は、元の値は検証実行後にタイムスタンプで上書きされます。
|
||||
[DatePicker で日付の入力を扱う](widget-jui#datepicker-date-input) に使用例がありますので、参照してください。
|
||||
[DatePicker で日付の入力を扱う](https://github.com/yiisoft/yii2-jui/blob/master/docs/guide-ja/topics-date-picker.md) に使用例がありますので、参照してください。
|
||||
|
||||
バージョン 2.0.4 以降では、[[yii\validators\DateValidator::$timestampAttributeFormat|$timestampAttributeFormat]] と [[yii\validators\DateValidator::$timestampAttributeTimeZone|$timestampAttributeTimeZone]] を使って、この属性に対するフォーマットとタイムゾーンを指定することが出来ます。
|
||||
|
||||
@@ -291,6 +291,7 @@ function foo($model, $attribute) {
|
||||
リストは、配列、または、空白かカンマで区切られたファイルの MIME タイプからなる文字列 (例えば、"image/jpeg, image/png") で指定することが出来ます。
|
||||
MIME タイプ名は大文字と小文字を区別しません。
|
||||
デフォルト値は null であり、すべての MIME タイプが許可されることを意味します。
|
||||
MIME タイプの詳細については、[一般的なメディアタイプ](http://en.wikipedia.org/wiki/Internet_media_type#List_of_common_media_types) を参照してください。
|
||||
- `minSize`: アップロードされるファイルに要求される最小限のバイト数。
|
||||
デフォルト値は null であり、下限値が無いことを意味します。
|
||||
- `maxSize`: アップロードされるファイルに許可される最大限のバイト数。
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
> Note|注意: この節はまだ執筆中です。
|
||||
|
||||
Yii は電子メールの作成と送信をサポートしています。
|
||||
ただし、フレームワークのコアはコンテント作成の機能と基本的なインタフェイスだけを提供します。
|
||||
ただし、フレームワークのコアが提供するのは、コンテント作成の機能と基本的なインタフェイスだけです。
|
||||
実際のメール送信メカニズムはエクステンションによって提供されなければなりません。
|
||||
と言うのは、メール送信はプロジェクトが異なるごとに異なる実装が必要とされるでしょうし、通常、外部のサービスやライブラリに依存するものだからです。
|
||||
|
||||
@@ -76,7 +76,7 @@ foreach ($users as $user) {
|
||||
Yii::$app->mailer->sendMultiple($messages);
|
||||
```
|
||||
|
||||
芸の細かいメールエクステンションであれば、単一のネットワークメッセージを使うなどして、この手法の恩恵を享受することが出来るでしょう。
|
||||
メールエクステンションの中には、単一のネットワークメッセージを使うなどして、この手法の恩恵を享受することが出来るものもいくつかあるでしょう。
|
||||
|
||||
|
||||
メールのコンテントを作成する
|
||||
|
||||
@@ -41,6 +41,9 @@ git remote add upstream git://github.com/yiisoft/yii2.git
|
||||
このコマンドは後日、依存パッケージを更新するためにも使用されます。
|
||||
このコマンドは内部的に `composer update` を実行します。
|
||||
|
||||
> Note|注意: デフォルトの git レポジトリの Url を使うため、SSH 経由で github からクローンすることになります。
|
||||
> `build` コマンドに `--useHttp` フラグを追加すれば、代りに HTTP を使うことが出来ます。
|
||||
|
||||
**これであなたは Yii 2 をハックするための作業用の遊び場を手に入れました。**
|
||||
|
||||
以下のステップはオプションです。
|
||||
@@ -73,6 +76,8 @@ php build/build dev/ext <extension-name>
|
||||
`php build/build dev/app basic` を実行すると、エクステンションとその依存パッケージがインストールされ、`extensions/redis` に対するシンボリックリンクが作成されます。
|
||||
こうすることで、composer の vendor ディレクトリではなく、直接に yii2 のレポジトリで作業をすることが出来るようになります。
|
||||
|
||||
> Note|注意: デフォルトの git レポジトリの Url を使うため、SSH 経由で github からクローンすることになります。
|
||||
> `build` コマンドに `--useHttp` フラグを追加すれば、代りに HTTP を使うことが出来ます。
|
||||
|
||||
バグ修正と機能改良に取り組む
|
||||
----------------------------
|
||||
|
||||
Reference in New Issue
Block a user