From 048dcd1bc86be6339598dd455ac609e51410c7f3 Mon Sep 17 00:00:00 2001 From: Kenshin Okinaka Date: Wed, 31 Oct 2018 22:42:11 +0900 Subject: [PATCH] [ja] follows #5812, #5819, #5821, #5835, #5871, #5875, #5882, 6a89fd8a --- ja/controllers/components/pagination.rst | 2 ++ ja/phinx/migrations.rst | 4 ++-- .../cms/tags-and-users.rst | 2 +- ja/views.rst | 6 +++-- ja/views/helpers/form.rst | 22 +++++++++++++++++++ ja/views/helpers/html.rst | 13 ++++++----- ja/views/helpers/paginator.rst | 18 +++++++++++++++ 7 files changed, 56 insertions(+), 11 deletions(-) diff --git a/ja/controllers/components/pagination.rst b/ja/controllers/components/pagination.rst index 8ba4ff2f9c..430124d8f2 100644 --- a/ja/controllers/components/pagination.rst +++ b/ja/controllers/components/pagination.rst @@ -210,6 +210,8 @@ paginate できます。 :: .. versionadded:: 3.3.0 マルチページネーションは、3.3.0 で追加されました。 +.. _control-which-fields-used-for-ordering: + 並び替えに使用するフィールドをコントロール ========================================== diff --git a/ja/phinx/migrations.rst b/ja/phinx/migrations.rst index 90e36db2ea..e744cf480e 100644 --- a/ja/phinx/migrations.rst +++ b/ja/phinx/migrations.rst @@ -692,8 +692,8 @@ comment カラムのテキストコメントを設定 ========== =========== オプション 説明 ========== =========== -precision ``scale`` と組み合わせ、小数精度を設定 -scale ``precision`` と組み合わせ、小数精度を設定 +precision ``scale`` と組み合わせ、数値全体の桁数を設定 +scale ``precision`` と組み合わせ、少数点以下の桁数を設定 signed ``unsigned`` オプションを有効または無効にする *(MySQL のみ適用)* ========== =========== diff --git a/ja/tutorials-and-examples/cms/tags-and-users.rst b/ja/tutorials-and-examples/cms/tags-and-users.rst index ce28341024..e488542566 100644 --- a/ja/tutorials-and-examples/cms/tags-and-users.rst +++ b/ja/tutorials-and-examples/cms/tags-and-users.rst @@ -294,7 +294,7 @@ CakePHP では、コントローラーのアクションをスリムに保ち、 $article->title, ['controller' => 'Articles', 'action' => 'view', $article->slug] ) ?> - created) ?> + created) ?> diff --git a/ja/views.rst b/ja/views.rst index 0a7561ec8c..2786cbbb64 100644 --- a/ja/views.rst +++ b/ja/views.rst @@ -505,8 +505,10 @@ Ajax レイアウトは AJAX のレスポンスを組み立てるのに便利で class UsersController extends AppController { - public function view_active() + public function viewActive() { + $this->viewBuilder()->setLayout('Contacts.contact'); + // あるいは 3.4 以前では以下 $this->viewBuilder()->layout('Contacts.contact'); // あるいは 3.1 以前では以下 $this->layout = 'Contacts.contact'; @@ -716,7 +718,7 @@ CakePHP のほとんどの構成要素と同様に、ビュークラスにはい * ビュークラスは **src/View** に配置してください。例: **src/View/PdfView.php** * ビュークラス名には ``View`` をサフィックスとしてつけてください。 例: ``PdfView`` * ビュークラス名を参照するときは ``View`` サフィックスを省略する必要があります。 - 例: ``$this->viewBuilder()->className('Pdf');``. + 例: ``$this->viewBuilder()->setClassName('Pdf');``. また、正しく動作するように、 ``View`` を継承しましょう。 :: diff --git a/ja/views/helpers/form.rst b/ja/views/helpers/form.rst index 6538f08f2b..2993462b02 100644 --- a/ja/views/helpers/form.rst +++ b/ja/views/helpers/form.rst @@ -967,6 +967,28 @@ textarea コントロールフィールドを作成します。使用される 'hiddenField' => 'N', ]); +オプションの作成にコレクションを使用 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +オプション配列の作成に Collection クラスを使うことができます。 +この方法は、すでにエンティティーのコレクションを持っていて、 +そこから select 要素を作成したい場合に理想的です。 + +``combine`` メソッドを使って、基本的なオプションの配列を作ることができます。 :: + + $options = $examples->combine('id', 'name'); + +配列を拡張して特別な属性を追加することもできます。 +以下は、 コレクションの ``map`` メソッドを使って option 要素にデータ属性を作成します。 :: + + $options = $examples->map(function ($value, $key) { + return [ + 'value' => $value->id, + 'text' => $value->name, + 'data-created' => $value->created + ]; + }); + チェックボックスの作成 ~~~~~~~~~~~~~~~~~~~~~~ diff --git a/ja/views/helpers/html.rst b/ja/views/helpers/html.rst index 072deaa93b..4b2ef6a799 100644 --- a/ja/views/helpers/html.rst +++ b/ja/views/helpers/html.rst @@ -730,19 +730,20 @@ Javascript をバッファリングした後、 HtmlHelper によるタグ出力の変更 ================================= -.. php:method:: setTemplates($templates) +.. php:method:: setTemplates(array $templates) -``$templates`` パラメーターは、読み込みたいタグを含む PHP ファイルへの文字列ファイルパスか、 -追加/置換するためのテンプレートの配列です。 :: - - // config/my_html.php からテンプレートを読み込む。 - $this->Html->setTemplates('my_html'); +テンプレートを追加や置換をするためのテンプレートの配列を読み込みます。 :: // 指定したテンプレートを読み込む。 $this->Html->setTemplates([ 'javascriptlink' => '' ]); +直接 templater を使うことでテンプレートを含む設定ファイルを読み込むことができます。 :: + + // テンプレートを持つ設定ファイルを読み込む。 + $this->Html->templater()->load('my_tags'); + テンプレートのファイルを読み込む場合、ファイルは次のようになります。 :: +.. note:: + + 関連するモデルでカラムをソートするには、 ``PaginationComponent::paginate`` + プロパティーで設定する必要があります。上記の例を使用すると、 + ページ制御を処理するコントローラーは、次のように ``sortWhitelist`` キーを設定する必要があります。 + + .. code-block:: php + + $this->paginate = [ + 'sortWhitelist' => [ + 'Posts.title', + 'Authors.name', + ], + ]; + + ``sortWhitelist`` オプションの使い方の詳細については、 + :ref:`control-which-fields-used-for-ordering` をご覧ください。 + ビューにおけるページ制御の表示に関する最後のネタは、 PaginationHelper によって提供されるページナビゲーションの追加です。 ::