docs/guide-ja small updates [ci skip]

This commit is contained in:
Nobuo Kihara
2015-06-05 00:30:59 +09:00
parent e7ce2ce709
commit ff9a7df3f3
3 changed files with 62 additions and 8 deletions

View File

@ -409,6 +409,10 @@ $post->updateCounters(['view_count' => 1]);
最新の修正を受ける前の属性値を知りたい場合は、[[yii\db\ActiveRecord::getOldAttributes()|getOldAttributes()]] または [[yii\db\ActiveRecord::getOldAttribute()|getOldAttribute()]] を呼ぶことが出来ます。 最新の修正を受ける前の属性値を知りたい場合は、[[yii\db\ActiveRecord::getOldAttributes()|getOldAttributes()]] または [[yii\db\ActiveRecord::getOldAttribute()|getOldAttribute()]] を呼ぶことが出来ます。
> Note|注意: 新旧の値は `===` 演算子を使って比較されるため、同じ値を持っていても型が違うとダーティであると見なされます。
> このことは、モデルが HTML フォームからユーザの入力を受け取るときにしばしば生じます。
> HTML フォームでは全ての値が文字列として表現されるからです。
> 入力値が正しい型、例えば整数値となることを保証するために、`['attributeName', 'filter', 'filter' => 'intval']` のように [検証フィルタ](input-validation.md#data-filtering) を適用することが出来ます。
### デフォルト属性値 <span id="default-attribute-values"></span> ### デフォルト属性値 <span id="default-attribute-values"></span>

View File

@ -74,7 +74,57 @@ echo Html::tag('div', 'Pwede na', $options);
// <div class="btn btn-success">Pwede na</div> // <div class="btn btn-success">Pwede na</div>
``` ```
同じことを `style` 属性のスタイルについて行うためには、次のようにします。 配列形式を使って複数の CSS クラスを指定することも出来ます。
```php
$options = ['class' => ['btn', 'btn-default']];
echo Html::tag('div', 'Save', $options);
// '<div class="btn btn-default">Save</div>' をレンダリングする
```
クラスを追加・削除する際にも配列形式を使うことが出来ます。
```php
$options = ['class' => 'btn'];
if ($type === 'success') {
Html::addCssClass($options, ['btn-success', 'btn-lg']);
}
echo Html::tag('div', 'Save', $options);
// '<div class="btn btn-success btn-lg">Save</div>' をレンダリングする
```
`Html::addCssClass()` はクラスの重複を防止しますので、同じクラスが二度出現するかも知れないと心配する必要はありません。
```php
$options = ['class' => 'btn btn-default'];
Html::addCssClass($options, 'btn-default'); // クラス 'btn-default' は既に存在する
echo Html::tag('div', 'Save', $options);
// '<div class="btn btn-default">Save</div>' をレンダリングする
```
CSS のクラスオプションを配列形式で指定する場合には、名前付きのキーを使ってクラスの論理的な目的を示すことが出来ます。
この場合、`Html::addCssClass()` で同じキーを持つクラスを指定しても無視されます。
```php
$options = [
'class' => [
'btn',
'theme' => 'btn-default',
]
];
Html::addCssClass($options, ['theme' => 'btn-success']); // 'theme' キーは既に使用されている
echo Html::tag('div', 'Save', $options);
// '<div class="btn btn-default">Save</div>' をレンダリングする
```
CSS のスタイルも `style` 属性を使って、同じように設定することが出来ます。
```php ```php
$options = ['style' => ['width' => '100px', 'height' => '100px']]; $options = ['style' => ['width' => '100px', 'height' => '100px']];

View File

@ -97,13 +97,13 @@ $config = require(__DIR__ . '/../config/web.php');
これによって、アプリケーションの [[yii\base\Application::bootstrap()|ブートストラップの過程]] において走らせるべきコンポーネントを配列として指定することが出来ます。 これによって、アプリケーションの [[yii\base\Application::bootstrap()|ブートストラップの過程]] において走らせるべきコンポーネントを配列として指定することが出来ます。
例えば、ある [モジュール](structure-modules.md) に [URL 規則](runtime-routing.md) をカスタマイズさせたいときに、モジュールの ID をこのプロパティの要素として挙げることが出来ます。 例えば、ある [モジュール](structure-modules.md) に [URL 規則](runtime-routing.md) をカスタマイズさせたいときに、モジュールの ID をこのプロパティの要素として挙げることが出来ます。
このプロパティに挙げるコンポーネントは、それぞれ、以下の形式のいずれかによって指定することが出来ます。 このプロパティにリストする各コンポーネントは、以下の形式のいずれかによって指定することが出来ます。
- [components](#components) によって指定されているアプリケーションコンポーネントの ID - [components](#components) によって指定されているアプリケーションコンポーネントの ID
- [modules](#modules) によって指定されているモジュールの ID - [modules](#modules) によって指定されているモジュールの ID
- クラス名 - クラス名
- 構成情報の配列 - 構成情報の配列
- コンポーネントを作成して返す無名関数 - コンポーネントを作成して返す無名関数
例えば、 例えば、
@ -207,7 +207,7 @@ if (YII_ENV_DEV) {
キーはコンポーネントの ID を示し、値はコンポーネントのクラス名または [構成情報](concept-configurations.md) を示します。 キーはコンポーネントの ID を示し、値はコンポーネントのクラス名または [構成情報](concept-configurations.md) を示します。
どのようなコンポーネントでもアプリケーションに登録することが出来ます。 どのようなコンポーネントでもアプリケーションに登録することが出来ます。
そして登録されたコンポーネントは、後で、`\Yii::$app->ComponentID` という式を使ってグローバルにアクセスすることが出来ます。 そして登録されたコンポーネントは、後で、`\Yii::$app->componentID` という式を使ってグローバルにアクセスすることが出来ます。
詳細は [アプリケーションコンポーネント](structure-application-components.md) の節を読んでください。 詳細は [アプリケーションコンポーネント](structure-application-components.md) の節を読んでください。