From ba2a7685169f336e811465fde7d24c1a06ebb2a9 Mon Sep 17 00:00:00 2001 From: Kenshin Okinaka Date: Sun, 6 Aug 2017 22:57:26 +0900 Subject: [PATCH 1/6] [ja] follows #4801 --- ja/core-libraries/validation.rst | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/ja/core-libraries/validation.rst b/ja/core-libraries/validation.rst index cbfd48079b..58724ee9c9 100644 --- a/ja/core-libraries/validation.rst +++ b/ja/core-libraries/validation.rst @@ -169,10 +169,10 @@ CakePHP のバリデーションは、任意の配列データに対するバリ $validator = new Validator(); - // オブジェクトインスタンスを用いる。 + // オブジェクトインスタンスを使います。 $validator->setProvider('custom', $myObject); - // クラス名を用いる。メソッドは静的なものでなければならない。 + // クラス名を使います。メソッドは静的なものでなければなりません。 $validator->setProvider('custom', 'App\Model\Validation'); バリデーションプロバイダーは、オブジェクトか、あるいはクラス名で設定されます。 @@ -186,6 +186,24 @@ CakePHP のバリデーションは、任意の配列データに対するバリ 'provider' => 'table' ]); +今後作成される全ての ``Validator`` オブジェクトに ``provider`` を追加したい場合、 +以下のように ``addDefaultProvider()`` メソッドを使用できます。 :: + + use Cake\Validation\Validator; + + // オブジェクトインスタンスを使います。 + Validator::addDefaultProvider('custom', $myObject); + + // クラス名を使います。メソッドは静的なものでなければなりません。 + Validator::addDefaultProvider('custom', 'App\Model\Validation'); + +.. note:: + + デフォルトプロバイダーは、 ``Validator`` オブジェクトが作成される前に追加されなければなりません。 + そのため **config/bootstrap.php** がデフォルトプロバイダーの設定に最適な場所です。 + +.. versionadded:: 3.5.0 + 国に基いて提供するための `Localized プラグイン `_ が利用できます。このプラグインで、国に依存するモデルのフィールドをバリデートできます。 例:: From 5401921c59f6cc60d5bca79573391d2662291578 Mon Sep 17 00:00:00 2001 From: Kenshin Okinaka Date: Sun, 6 Aug 2017 22:57:54 +0900 Subject: [PATCH 2/6] [ja] follows #5013 --- ja/core-libraries/httpclient.rst | 13 +++++++++++++ .../internationalization-and-localization.rst | 9 ++++++--- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/ja/core-libraries/httpclient.rst b/ja/core-libraries/httpclient.rst index 439e46f86b..6b87ae2044 100644 --- a/ja/core-libraries/httpclient.rst +++ b/ja/core-libraries/httpclient.rst @@ -332,6 +332,19 @@ Client インスタンスに格納されているクッキーは、それ以後 'cookies' => ['sessionid' => '123abc'] ]); +``addCookie()`` メソッドを使って、作成された後のクライアントにクッキーオブジェクトを +追加することができます。 :: + + use Cake\Http\Cookie\Cookie; + + $http = new Client([ + 'host' => 'cakephp.org' + ]); + $http->addCookie(new Cookie('session', 'abc123')); + +.. versionadded:: 3.5.0 + ``addCookie()`` は 3.5.0 で追加されました。 + .. _httpclient-response-objects: レスポンスオブジェクト diff --git a/ja/core-libraries/internationalization-and-localization.rst b/ja/core-libraries/internationalization-and-localization.rst index 16ff11c703..5a9ed2f2f9 100644 --- a/ja/core-libraries/internationalization-and-localization.rst +++ b/ja/core-libraries/internationalization-and-localization.rst @@ -106,13 +106,14 @@ i18n シェルを利用できます。より知りたい場合は、 :doc:`次 デフォルトの翻訳言語、日付のフォーマット、番号のフォーマットおよび通貨を含む、 アプリケーションのいくつかの様相をコントロールします。 -ランタイムでロケールを変更する +実行時にロケールを変更する ------------------------------ 翻訳文字列の言語を変更する場合はこのメソッドを呼び出せます。 :: use Cake\I18n\I18n; + // 3.5 より前は I18n::locale() を使用します I18n::setLocale('de_DE'); 地域化のツールを使うと、これは数字や日付がどのようにフォーマットされているかについても変更します。 @@ -361,7 +362,7 @@ Gettext の複数形選択を使用する use Aura\Intl\Package; - I18n::translator('animals', function () { + I18n::setTranslator('animals', function () { $package = new Package( 'default', // フォーマット戦略 (ICU) 'default' // フォールバックドメイン @@ -380,6 +381,7 @@ Gettext の複数形選択を使用する 見つかります。翻訳機構を作成するのに最低限必要なのは、ローダー機能が ``Aura\Intl\Package`` オブジェクトを返すことです。一旦コードを置けば、翻訳機能は以下のように利用できるでしょう。 :: + // 3.5 より前は I18n::locale() を使用します I18n::setLocale('fr_FR'); __d('animals', 'Dog'); // "Chien" を返す @@ -392,7 +394,7 @@ Gettext の複数形選択を使用する use Cake\I18n\MessagesFileLoader as Loader; // src/Locale/folder/sub_folder/filename.po からメッセージをロード - + // 3.5 より前は translator() を使用します I18n::setTranslator( 'animals', new Loader('filename', 'folder/sub_folder', 'po'), @@ -432,6 +434,7 @@ CakePHP が利用しているものと同じやり方を使い続けることも use Cake\I18n\MessagesFileLoader as Loader; + // 3.5 より前は translator() を使用します I18n::setTranslator( 'animals', new Loader('animals', 'fr_FR', 'yaml'), From 9a8c9672a4b04b6f0e6e618d1d71ec3db40a2a0c Mon Sep 17 00:00:00 2001 From: Kenshin Okinaka Date: Sun, 6 Aug 2017 23:00:47 +0900 Subject: [PATCH 3/6] [ja] follows #5136 --- ja/views.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ja/views.rst b/ja/views.rst index 14e0510646..aed8e43fbd 100644 --- a/ja/views.rst +++ b/ja/views.rst @@ -450,7 +450,7 @@ CakePHP の既定のレイアウトは **src/Template/Layout/default.ctp** に コントローラーのアクションの中か、ビューの ``$layout`` プロパティーで切り替えるだけです。 :: // コントローラーから - public function admin_view() + public function view() { // レイアウトの設定 $this->viewBuilder()->setLayout('admin'); From 919b0ec49d1b419733085f1a3b69c5f846ebfb1c Mon Sep 17 00:00:00 2001 From: Kenshin Okinaka Date: Sun, 6 Aug 2017 23:04:12 +0900 Subject: [PATCH 4/6] [ja] follows #5143 --- ja/core-libraries/collections.rst | 33 +++++++++++-------------------- 1 file changed, 11 insertions(+), 22 deletions(-) diff --git a/ja/core-libraries/collections.rst b/ja/core-libraries/collections.rst index fe9d879012..4599260d8e 100644 --- a/ja/core-libraries/collections.rst +++ b/ja/core-libraries/collections.rst @@ -47,30 +47,19 @@ メソッド一覧 ============= -.. table:: +.. csv-table:: :class: docutils internal-toc - +-----------------------+---------------------------+----------------------+---------------------+ - | :php:meth:`append` | :php:meth:`buffered` | :php:meth:`combine` | :php:meth:`compile` | - +-----------------------+---------------------------+----------------------+---------------------+ - | :php:meth:`contains` | :php:meth:`countBy` | :php:meth:`chunk` | :php:meth:`each` | - +-----------------------+---------------------------+----------------------+---------------------+ - | :php:meth:`every` | :php:meth:`extract` | :php:meth:`filter` | :php:meth:`first` | - +-----------------------+---------------------------+----------------------+---------------------+ - | :php:meth:`groupBy` | :php:meth:`indexBy` | :php:meth:`insert` | :php:meth:`isEmpty` | - +-----------------------+---------------------------+----------------------+---------------------+ - | :php:meth:`last` | :php:meth:`listNested` | :php:meth:`map` | :php:meth:`match` | - +-----------------------+---------------------------+----------------------+---------------------+ - | :php:meth:`max` | :php:meth:`min` | :php:meth:`nest` | :php:meth:`reduce` | - +-----------------------+---------------------------+----------------------+---------------------+ - | :php:meth:`reject` | :php:meth:`sample` | :php:meth:`shuffle` | :php:meth:`skip` | - +-----------------------+---------------------------+----------------------+---------------------+ - | :php:meth:`some` | :php:meth:`sortBy` | :php:meth:`stopWhen` | :php:meth:`sumOf` | - +-----------------------+---------------------------+----------------------+---------------------+ - | :php:meth:`take` | :php:meth:`through` | :php:meth:`unfold` | :php:meth:`zip` | - +-----------------------+---------------------------+----------------------+---------------------+ - | :php:meth:`transpose` | :php:meth:`chunkWithKeys` | | | - +-----------------------+---------------------------+----------------------+---------------------+ + :php:meth:`append`, :php:meth:`buffered`, :php:meth:`chunk`, :php:meth:`chunkWithKeys` + :php:meth:`combine`, :php:meth:`compile`, :php:meth:`contains`, :php:meth:`countBy`, + :php:meth:`each`, :php:meth:`every`, :php:meth:`extract`, :php:meth:`filter` + :php:meth:`first`, :php:meth:`groupBy`, :php:meth:`indexBy`, :php:meth:`insert` + :php:meth:`isEmpty`, :php:meth:`last`, :php:meth:`listNested`, :php:meth:`map` + :php:meth:`match`, :php:meth:`max`, :php:meth:`min`, :php:meth:`nest` + :php:meth:`reduce`, :php:meth:`reject`, :php:meth:`sample`, :php:meth:`shuffle` + :php:meth:`skip`, :php:meth:`some`, :php:meth:`sortBy`, :php:meth:`stopWhen` + :php:meth:`sumOf`, :php:meth:`take`, :php:meth:`through`, :php:meth:`transpose` + :php:meth:`unfold`, :php:meth:`zip` 反復 ==== From 86be64c8f920db7478715c2d1762b28343160518 Mon Sep 17 00:00:00 2001 From: Kenshin Okinaka Date: Sun, 6 Aug 2017 23:10:06 +0900 Subject: [PATCH 5/6] [ja] follows #5147 --- ja/console-and-shells/cron-jobs.rst | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ja/console-and-shells/cron-jobs.rst b/ja/console-and-shells/cron-jobs.rst index 620472ac7b..43579deb27 100644 --- a/ja/console-and-shells/cron-jobs.rst +++ b/ja/console-and-shells/cron-jobs.rst @@ -4,7 +4,7 @@ cron ジョブに登録してシェルを実行する 通常シェルは、ニュースレターを送ったり、たまにデータベースをクリーンアップしたりすることを、 cron ジョブとして実行します。 -このように簡単な設定で行えます。:: +このように簡単な設定で行えます。 :: */5 * * * * cd /full/path/to/app && bin/cake myshell myparam # * * * * * 実行するコマンド @@ -33,9 +33,9 @@ cron ジョブとして実行します。 .. note:: php.ini の中で ``register_argc_argv = 1`` を含めることによって、 register_argc_argv を有効にしなければなりません。グローバルに register_argc_argv - を変更できない場合、 ``-c /full/path/to/root/php.ini`` をつけることで、 - cron ジョブに独自の設定ファイル (php.ini) を指定することができます。例: ``php -c - /full/path/to/root/php.ini /full/path/to/root/bin/cake.php myshell + を変更できない場合、 ``-d register_argc_argv=1`` パラメーターをつけることで、 + cron ジョブに独自の設定ファイル (php.ini) を指定することができます。例: ``php + -d register_argc_argv=1 /full/path/to/root/bin/cake.php myshell myparam`` .. meta:: From 720a7af46907d6bc27cda95df8e05c8ff3ece98e Mon Sep 17 00:00:00 2001 From: Kenshin Okinaka Date: Mon, 7 Aug 2017 12:16:53 +0900 Subject: [PATCH 6/6] [ja] follows #5150 --- ja/orm/entities.rst | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/ja/orm/entities.rst b/ja/orm/entities.rst index e17dc944cb..ef431785d8 100644 --- a/ja/orm/entities.rst +++ b/ja/orm/entities.rst @@ -163,6 +163,12 @@ CakePHP の ORM を使うためにエンティティークラスを生成する $user->title = 'foo'; // 同時に slug が設定されます。 $user->set('title', 'foo'); // 同時に slug が設定されます。 +.. warning:: + + アクセサーは、エンティティーがデータベースに永続化される前にも実行されます。 + フィールドを変換したいけれど、変換したものを永続化したくない場合、 + 永続化されない仮想プロパティーの使用をお勧めします。 + .. _entities-virtual-properties: 仮想プロパティーの生成 @@ -204,7 +210,7 @@ CakePHP の ORM を使うためにエンティティークラスを生成する エンティティーのプロパティーが変更されたかどうかに応じるコードを 作りたいと思うことがあるかもしれません。例えば、フィールドが変更された時にだけ -バリデートしたい場合です。:: +バリデートしたい場合です。 :: // タイトルが変更された時に、. $article->dirty('title');