Skip to content

Commit

Permalink
docs/guide-ja/* updated
Browse files Browse the repository at this point in the history
  • Loading branch information
softark committed Dec 22, 2023
1 parent fcaafd8 commit da20c49
Show file tree
Hide file tree
Showing 29 changed files with 247 additions and 50 deletions.
1 change: 1 addition & 0 deletions docs/guide-ja/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,7 @@ RESTful ウェブ・サービス

* [クイック・スタート](rest-quick-start.md)
* [リソース](rest-resources.md)
* [コレクションのフィルタリング](rest-filtering-collections.md)
* [コントローラ](rest-controllers.md)
* [ルーティング](rest-routing.md)
* [レスポンス形式の設定](rest-response-formatting.md)
Expand Down
2 changes: 1 addition & 1 deletion docs/guide-ja/caching-data.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ $data = $cache->getOrSet($key, function () use ($user_id) {

キャッシュ・コンポーネントは通常グローバルに設定しアクセスできるように
[アプリケーション・コンポーネント](structure-application-components.md) として登録されます。
以下のコードは、二台のキャッシュ・サーバを用いる [Memcached](https://memcached.org/) を使うように
以下のコードは、二台のキャッシュ・サーバを用いる [memcached](https://memcached.org/) を使うように
`cache` アプリケーション・コンポーネントを構成する方法を示すものです。

```php
Expand Down
4 changes: 2 additions & 2 deletions docs/guide-ja/concept-behaviors.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
ビヘイビア
==========

ビヘイビアは [[yii\base\Behavior]] またその子クラスのインスタンスです。ビヘイビアは
[ミックスイン](https://ja.wikipedia.org/wiki/Mixin) としても知られ、既存の [[yii\base\Component|component]] クラスの
ビヘイビアは [[yii\base\Behavior]] またその子クラスのインスタンスです。
ビヘイビアは [ミックスイン](https://ja.wikipedia.org/wiki/Mixin) としても知られ、既存の [[yii\base\Component|component]] クラスの
機能を、クラスの継承を変更せずに拡張することができます。コンポーネントにビヘイビアをアタッチすると、その
コンポーネントにはビヘイビアのメソッドとプロパティが "注入" され、それらのメソッドとプロパティは、
コンポーネント・クラス自体に定義されているかのようにアクセスできるようになります。また、ビヘイビアは、
Expand Down
2 changes: 1 addition & 1 deletion docs/guide-ja/concept-di-container.md
Original file line number Diff line number Diff line change
Expand Up @@ -541,7 +541,7 @@ $reader = $container->get('app\storage\DocumentsReader');

依存注入と [サービス・ロケータ](concept-service-locator.md) はともに、疎結合でよりテストしやすい方法でのソフトウェア構築を可能にする、
定番のデザインパターンです。
依存注入とサービス・ロケータへのより深い理解を得るために[Martin の記事](https://martinfowler.com/articles/injection.html)
依存注入とサービス・ロケータをより深く理解するために[Martin の記事](https://martinfowler.com/articles/injection.html)
を読むことを強くお勧めします。

Yii はその [サービス・ロケータ](concept-service-locator.md) を、依存注入 (DI) コンテナの上に実装しています。
Expand Down
2 changes: 1 addition & 1 deletion docs/guide-ja/concept-service-locator.md
Original file line number Diff line number Diff line change
Expand Up @@ -129,4 +129,4 @@ return [
モジュールからサービスを引き出そうとする全てのリクエストは、そのモジュールが要求に応じられない場合は、すべてその親に渡されます。

モジュール内のコンポーネントの構成情報は、親モジュール内のコンポーネントの構成情報とは決してマージされないことに注意して下さい。
サービス・ロケータ・パターンによって私たちは名前の付いたサービスを定義することが出来ますが、同じ名前のサービスが同じ構成パラメータを使用すると想定することは出来ません。
サービス・ロケータのパターンによって私たちは名前の付いたサービスを定義することが出来ますが、同じ名前のサービスが同じ構成パラメータを使用すると想定することは出来ません。
2 changes: 1 addition & 1 deletion docs/guide-ja/db-migrations.md
Original file line number Diff line number Diff line change
Expand Up @@ -685,7 +685,7 @@ class m150101_185401_create_news_table extends Migration
`safeDown()` では、先に行を削除して、次にテーブルを削除しています。

> Note: 全ての DBMS がトランザクションをサポートしている訳ではありません。また、トランザクションに入れることが出来ない DB クエリもあります。
いくつかの例を [暗黙のコミット](https://dev.mysql.com/doc/refman/5.7/en/implicit-commit.html) で見ることが出来ます。
そのいくつかの例を [暗黙のコミット](https://dev.mysql.com/doc/refman/5.7/en/implicit-commit.html) で見ることが出来ます。
その場合には、代りに、`up()``down()` を実装しなければなりません。


Expand Down
2 changes: 1 addition & 1 deletion docs/guide-ja/db-query-builder.md
Original file line number Diff line number Diff line change
Expand Up @@ -299,7 +299,7 @@ $query->where([$column => $value]);
値が自動的に一対のパーセント記号によって囲まれることに注意してください。

> Note: PostgreSQL を使っている場合は、`like` の代りに、大文字と小文字を区別しない比較のための
> [`ilike`](https://www.postgresql.org/docs/8.3/functions-matching.html#FUNCTIONS-LIKE) を使うことも出来ます。
> [`ilike`](https://www.postgresql.org/docs/8.3/static/functions-matching.html#FUNCTIONS-LIKE) を使うことも出来ます。
- `or like`: オペランド 2 が配列である場合に `LIKE` 述語が `OR` によって結合される以外は、
`like` 演算子と同じです。
Expand Down
31 changes: 22 additions & 9 deletions docs/guide-ja/input-tabular-input.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,14 @@ class SettingsController extends Controller
{
$settings = Setting::find()->indexBy('id')->all();

if (Model::loadMultiple($settings, Yii::$app->request->post()) && Model::validateMultiple($settings)) {
if ($this->request->isPost) {
if (Setting::loadMultiple($settings, $this->request->post()) && Setting::validateMultiple($settings)) {
foreach ($settings as $setting) {
$setting->save(false);
}
return $this->redirect('index');
}
}

return $this->render('update', ['settings' => $settings]);
}
Expand All @@ -71,10 +73,12 @@ use yii\widgets\ActiveForm;

$form = ActiveForm::begin();

foreach ($settings as $index => $setting) {
echo $form->field($setting, "[$index]value")->label($setting->name);
foreach ($settings as $id => $setting) {
echo $form->field($setting, "[$id]value")->label($setting->name);
}

echo Html::submitButton('Save');

ActiveForm::end();
```

Expand All @@ -88,20 +92,29 @@ ActiveForm::end();
```php
public function actionCreate()
{
$count = count(Yii::$app->request->post('Setting', []));
$settings = [new Setting()];
for($i = 1; $i < $count; $i++) {
$settings[] = new Setting();
$settings = [];
if ($this->request->isPost) {
$count = count($this->request->post($setting->tableName())) - 1;
for ($i = 0; $i < $count; $i++) {
$settings[$i] = new Setting();
}
if (Setting::loadMultiple($settings, $this->request->post()) && Setting::validateMultiple($settings)) {
foreach ($settings as $setting) {
$setting->save(false);
}
return $this->redirect('index');
}
}
$settings[] = new Setting();

// ...
return $this->render('create', ['settings' => $settings]);
}
```

ここでは、デフォルトで一個のモデルを含む `$settings` 配列を初期値として作成し、少なくとも一個のテキスト・フィールドが常にビューに表示されるようにしています。
そして、受信したインプットの行数に合せて、配列にモデルを追加しています。

ビューでは javascript を使ってインプットの行を動的に追加することが出来ます。
ビューでは JavaScript を使ってインプットの行を動的に追加することが出来ます。

### 更新、作成、削除を一つのページに組み合わせる

Expand Down
2 changes: 1 addition & 1 deletion docs/guide-ja/input-validation.md
Original file line number Diff line number Diff line change
Expand Up @@ -748,7 +748,7 @@ JS;
### Deferred 検証 <span id="deferred-validation"></span>
非同期のクライアント・サイドの検証をサポートする必要がある場合は、[Defered オブジェクト](https://api.jquery.com/category/deferred-object/) を作成することが出来ます。
非同期のクライアント・サイドの検証をサポートする必要がある場合は、[Deferred オブジェクト](https://api.jquery.com/category/deferred-object/) を作成することが出来ます。
例えば、AJAX によるカスタム検証を実行するために、次のコードを使うことが出来ます。
```php
Expand Down
6 changes: 3 additions & 3 deletions docs/guide-ja/output-data-providers.md
Original file line number Diff line number Diff line change
Expand Up @@ -354,13 +354,13 @@ $filter = new ActiveDataFilter([

$filterCondition = null;

// どのようなソースからでもフィルタをロードすることが出来ます。
// 例えば、リクエスト・ボディの JSON からロードしたい場合は、
// どのようなソースからでもフィルタをロードすることが出来ます。例えば、
// リクエスト・ボディの JSON からロードしたい場合は、
// 下記のように Yii::$app->request->getBodyParams() を使います。
if ($filter->load(\Yii::$app->request->get())) {
$filterCondition = $filter->build();
if ($filterCondition === false) {
// シリアライザがエラーを抽出するだろう
// シリアライザがフィルタの抽出でエラーを出すかもしれない
return $filter;
}
}
Expand Down
2 changes: 1 addition & 1 deletion docs/guide-ja/output-data-widgets.md
Original file line number Diff line number Diff line change
Expand Up @@ -777,4 +777,4 @@ yii gii/crud --controllerClass="backend\\controllers\PostController" \
さらに読むべき文書
------------------

- Arno Slatius による [Rendering Data in Yii 2 with GridView and ListView](https://www.sitepoint.com/rendering-data-in-yii-2-with-gridview-and-listview/)
- Arno Slatius による [Rendering Data in Yii 2 with GridView and ListView](https://www.sitepoint.com/rendering-data-in-yii-2-with-gridview-and-listview/)
2 changes: 1 addition & 1 deletion docs/guide-ja/output-formatting.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ return [
- [[yii\i18n\Formatter::asDate()|date]] - 値は日付としてフォーマットされます。例えば `January 01, 2014`
- [[yii\i18n\Formatter::asTime()|time]] - 値は時刻としてフォーマットされます。例えば `14:23`
- [[yii\i18n\Formatter::asDatetime()|datetime]] - 値は日付および時刻としてフォーマットされます。例えば `January 01, 2014 14:23`
- [[yii\i18n\Formatter::asTimestamp()|timestamp]] - 値は [unix タイムスタンプ](https://ja.wikipedia.org/wiki/UNIX%E6%99%82%E9%96%93) としてフォーマットされます。例えば `1412609982`
- [[yii\i18n\Formatter::asTimestamp()|timestamp]] - 値は [unix タイムスタンプ](https://ja.wikipedia.org/wiki/UNIX%E6%99%82%E9%96%93) としてフォーマットされます。例えば `1412609982`
- [[yii\i18n\Formatter::asRelativeTime()|relativeTime]] - 値は、その日時と現在との間隔として、人間に分かりやすい言葉でフォーマットされます。
例えば `1 hour ago`
- [[yii\i18n\Formatter::asDuration()|duration]] - 値は継続時間として、人間に分かりやすい言葉でフォーマットされます。例えば `1 day, 2 minutes`
Expand Down
2 changes: 1 addition & 1 deletion docs/guide-ja/rest-authentication.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

* [HTTP Basic 認証](https://ja.wikipedia.org/wiki/Basic%E8%AA%8D%E8%A8%BC): アクセス・トークンはユーザ名として送信されます。
この方法は、アクセス・トークンを API コンシューマ側で安全に保存することが出来る場合、
例えば API コンシューマがサーバ上で走るプログラムである場合などにのみ使用されるべきです
例えば API コンシューマがサーバ上で走るプログラムである場合などのみに使用されるべきです
* クエリ・パラメータ: アクセス・トークンは API の URL、例えば、`https://example.com/users?access-token=xxxxxxxx`
でクエリ・パラメータとして送信されます。
ほとんどのウェブ・サーバはクエリ・パラメータをサーバのログに記録するため、この手法は、
Expand Down
Loading

0 comments on commit da20c49

Please sign in to comment.