{"action":"created","comment":{"url":"https://api.github.com/repos/cakephp/docs/pulls/comments/90152514","pull_request_review_id":10676081,"id":90152514,"diff_hunk":"@@ -19,3 +22,250 @@ Behaviors\n     /orm/behaviors/timestamp\n     /orm/behaviors/translate\n     /orm/behaviors/tree\n+\n+\n+ビヘイビアの生成\n+================\n+\n+次の例では、非常に単純な ``SluggableBehavior`` を作成します。 このビヘイビアは、別のフィールドに基づいて、 ``Infragistics::slug()`` の結果をslugフィールドに取り込むことを可能にします。\n+\n+ビヘイビアを作成する前に、ビヘイビアの規約を理解する必要があります。\n+\n+- ビヘイビアファイルは **src/Model/Behavior** 、または ``MyPlugin\\Model\\Behavior`` に配置する。\n+- ビヘイビアクラスは ``App\\Model\\Behavior`` 名前空間または ``MyPlugin\\Model\\Behavior`` 名前空間に存在する必要がある。\n+- ビヘイビアクラスの名前は ``Behavior`` で終了する。\n+- ビヘイビアは ``Cake\\ORM\\Behavior`` を継承する。\n+\n+sluggable behaviorを作成してみます。 **src/Model/Behavior/SluggableBehavior.php** に以下を挿入します。 ::\n+\n+    namespace App\\Model\\Behavior;\n+\n+    use Cake\\ORM\\Behavior;\n+\n+    class SluggableBehavior extends Behavior\n+    {\n+    }\n+\n+テーブルと同様に、ビヘイビアには、必要に応じてビヘイビアの初期化コードを入れることができる ``initialize()`` フックもあります。 ::\n+\n+    public function initialize(array $config)\n+    {\n+        // Some initialization code here\n+    }\n+\n+\n+このビヘイビアをテーブルクラスの1つに追加できるようになりました。 この例では記事には扱いやすいURLを作成するためのslugプロパティがあるため、 ``ArticlesTable`` を使用します。 ::\n+\n+    namespace App\\Model\\Table;\n+\n+    use Cake\\ORM\\Table;\n+\n+    class ArticlesTable extends Table\n+    {\n+\n+        public function initialize(array $config)\n+        {\n+            $this->addBehavior('Sluggable');\n+        }\n+    }\n+\n+この新しいビヘイビアは、今は何もしません。 次に、ミックスインメソッドとイベントリスナーを追加して、エンティティを保存するときにフィールドを自動的にslugさせることができるようにします。\n+\n+ミックスインメソッドの定義\n+--------------------------\n+\n+ビヘイビアに定義されたパブリックメソッドは、それが追加されたテーブルオブジェクトに 'mixin'メソッドとして追加されます。 同じメソッドを提供する2つのビヘイビアを追加すると、例外が発生します。 ビヘイビアがテーブルクラスと同じメソッドを提供する場合、ビヘイビアメソッドはテーブルから呼び出すことはできません。 ビヘイビアミックスインメソッドは、テーブルに提供されるものとまったく同じ引数を受け取ります。 たとえば、SluggableBehaviorが次のメソッドを定義しているとします。 ::\n+\n+    public function slug($value)\n+    {\n+        return Inflector::slug($value, $this->_config['replacement']);\n+    }\n+\n+これは以下を使用して呼び出すことができます。 ::\n+\n+    $slug = $articles->slug('My article name');\n+\n+公開されたミックスインメソッドの制限または名前の変更\n+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n+\n+ビヘイビアを作成するときに、ミックスインメソッドとしてパブリックメソッドを公開したくない場合があります。このような場合、 ``implementMethods`` 設定キーを使用してミックスインメソッドの名前を変更したり除外したりすることができます。 たとえば、slug()メソッドに接頭辞を付ける場合は、次のようにします。 ::\n+\n+    protected $_defaultConfig = [\n+        'implementedMethods' => [\n+            'superSlug' => 'slug',\n+        ]\n+    ];\n+\n+この設定を適用すると ``slug()`` は呼び出し可能になりませんが、 ``superSlug()`` のミックスインメソッドがテーブルに追加されます。 特に、ビヘイビアが他のパブリックメソッドを実装していた場合、上記の設定ではミックスインメソッドとしては **利用できません** 。\n+\n+公開されたメソッドは設定によって決まるので、テーブルにビヘイビアを追加するときに、ミックスインメソッドの名前を変更/削除することもできます。例えば以下のようにします。 ::\n+\n+    // In a table's initialize() method.\n+    $this->addBehavior('Sluggable', [\n+        'implementedMethods' => [\n+            'superSlug' => 'slug',\n+        ]\n+    ]);\n+\n+イベントリスナーの定義\n+-----------------------\n+\n+私たちのビヘイビアには、フィールドをslugするためのミックスインメソッドが用意されているので、エンティティを保存するときにフィールドを自動的にスラッグするコールバックリスナを実装できます。 また、slugメソッドを変更して、単純な値ではなくエンティティを受け入れるようにします。 ビヘイビアは次のようになります。 ::\n+\n+    namespace App\\Model\\Behavior;\n+\n+    use Cake\\Datasource\\EntityInterface;\n+    use Cake\\Event\\Event;\n+    use Cake\\ORM\\Behavior;\n+    use Cake\\ORM\\Entity;\n+    use Cake\\ORM\\Query;\n+    use Cake\\Utility\\Inflector;\n+\n+    class SluggableBehavior extends Behavior\n+    {\n+        protected $_defaultConfig = [\n+            'field' => 'title',\n+            'slug' => 'slug',\n+            'replacement' => '-',\n+        ];\n+\n+        public function slug(Entity $entity)\n+        {\n+            $config = $this->config();\n+            $value = $entity->get($config['field']);\n+            $entity->set($config['slug'], Inflector::slug($value, $config['replacement']));\n+        }\n+\n+        public function beforeSave(Event $event, EntityInterface $entity)\n+        {\n+            $this->slug($entity);\n+        }\n+\n+    }\n+\n+上記のコードは、ビヘイビアの興味深い機能をいくつか示しています。\n+\n+- ビヘイビアでは、:ref:`table-callbacks` に従うメソッドを定義することで、コールバックメソッドを定義できる。\n+- ビヘイビアでは、デフォルトのコンフィグレーションプロパティを定義できる。ビヘイビアがテーブルに追加されている場合、このプロパティはオーバーライドとマージされる。\n+\n+継続して保存されないようにするには、コールバック内のイベント伝播を停止するだけです。 ::\n+\n+    public function beforeSave(Event $event, EntityInterface $entity)\n+    {\n+        if (...) {\n+            $event->stopPropagation();\n+            return;\n+        }\n+        $this->slug($entity);\n+    }\n+\n+ファインダの定義\n+-----------------\n+\n+slug値を持つ記事を保存できるようになったので、slugで記事を取得できるようにファインダメソッドを実装する必要があります。 ビヘイビアファインダメソッドは、 :ref:`custom-find-methods` と同じ規約を使用します。  ``find( 'slug')`` メソッドは以下のようになります。 ::\n+\n+    public function findSlug(Query $query, array $options)\n+    {\n+        return $query->where(['slug' => $options['slug']]);\n+    }\n+\n+ビヘイビアに上記のメソッドがあれば、呼び出しが可能です。 ::\n+\n+    $article = $articles->find('slug', ['slug' => $value])->first();\n+\n+公開されたファインダメソッドの制限または名前の変更\n+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n+\n+ビヘイビアを作成するときに、ファインダメソッドを公開したくない場合や、メソッドの重複を避けるためにファインダの名前を変更する必要がある場合があります。このような場合は、 ``implementedFinders`` 設定キーを使用してファインダメソッドの名前を変更したり除外したりできます。たとえば、 ``find(slug)`` メソッドの名前を変更したい場合は、次のようにします。 ::\n+\n+    protected $_defaultConfig = [\n+        'implementedFinders' => [\n+            'slugged' => 'findSlug',\n+        ]\n+    ];\n+\n+この設定を適用すると、 ``find('slug')`` がエラーを引き起こします。しかし、 ``find('slugged')`` が利用可能になります。特に、ビヘイビアが他のファインダメソッドを実装していた場合、それらは設定に含まれていないため **利用できません** 。\n+\n+公開されたメソッドは設定によって決まるので、ビヘイビアをテーブルに追加するときに、ファインダメソッドの名前を変更/削除することもできます。例えば以下のようにします。 ::\n+\n+    // In a table's initialize() method.\n+    $this->addBehavior('Sluggable', [\n+        'implementedFinders' => [\n+            'slugged' => 'findSlug',\n+        ]\n+    ]);\n+\n+リクエストデータをエンティティプロパティに変換する\n+===================================================\n+\n+ビヘイビアは、 ``Cake\\ORM\\PropertyMarshalInterface`` を実装することによって、カスタムフィールドがどのように変換されるかについてのロジックを定義できます。このインタフェースでは、1つのメソッドを実装する必要があります。 ::\n+\n+    public function buildMarshalMap($marshaller, $map, $options)\n+    {\n+        return [\n+            'custom_behavior_field' => function ($value, $entity) {\n+                // Transform the value as necessary\n+                return $value . '123';\n+            }\n+        ];\n+    }\n+\n+``TranslateBehavior`` には、参照される可能性のあるこのインターフェースの重要な実装があります。\n+\n+.. versionadded:: 3.3.0\n+    The ability for behaviors to participate in marshalling was added in 3.3.0\n+    \n+ロードされたビヘイビアの削除\n+=============================\n+\n+テーブルからビヘイビアを削除するには、 ``removeBehavior()`` メソッドを呼び出します。 ::\n+\n+    // Remove the loaded behavior\n+    $this->removeBehavior('Sluggable');\n+\n+ロードされたビヘイビアへのアクセス\n+===================================\n+\n+ビヘイビアをテーブルインスタンスに追加したら、読み込まれたビヘイビアをイントロスペクトしたり、 ``BehaviorRegistry`` を使用して特定のビヘイビアにアクセスしたりできます。 ::","path":"ja/orm/behaviors.rst","position":238,"original_position":238,"commit_id":"3bf7821e15d4783d52ef1891ab4fedfd16f097ba","original_commit_id":"3bf7821e15d4783d52ef1891ab4fedfd16f097ba","user":{"login":"chinpei215","id":7399393,"avatar_url":"https://avatars.githubusercontent.com/u/7399393?v=3","gravatar_id":"","url":"https://api.github.com/users/chinpei215","html_url":"https://github.com/chinpei215","followers_url":"https://api.github.com/users/chinpei215/followers","following_url":"https://api.github.com/users/chinpei215/following{/other_user}","gists_url":"https://api.github.com/users/chinpei215/gists{/gist_id}","starred_url":"https://api.github.com/users/chinpei215/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chinpei215/subscriptions","organizations_url":"https://api.github.com/users/chinpei215/orgs","repos_url":"https://api.github.com/users/chinpei215/repos","events_url":"https://api.github.com/users/chinpei215/events{/privacy}","received_events_url":"https://api.github.com/users/chinpei215/received_events","type":"User","site_admin":false},"body":"> イントロスペクト\r\n\r\n`確認` would be a better wording.","created_at":"2016-11-30T01:22:36Z","updated_at":"2016-11-30T01:31:36Z","html_url":"https://github.com/cakephp/docs/pull/4500#discussion_r90152514","pull_request_url":"https://api.github.com/repos/cakephp/docs/pulls/4500","_links":{"self":{"href":"https://api.github.com/repos/cakephp/docs/pulls/comments/90152514"},"html":{"href":"https://github.com/cakephp/docs/pull/4500#discussion_r90152514"},"pull_request":{"href":"https://api.github.com/repos/cakephp/docs/pulls/4500"}}},"pull_request":{"url":"https://api.github.com/repos/cakephp/docs/pulls/4500","id":95726866,"html_url":"https://github.com/cakephp/docs/pull/4500","diff_url":"https://github.com/cakephp/docs/pull/4500.diff","patch_url":"https://github.com/cakephp/docs/pull/4500.patch","issue_url":"https://api.github.com/repos/cakephp/docs/issues/4500","number":4500,"state":"open","locked":false,"title":"[ja] translate behaviors.rst","user":{"login":"natsukinoue","id":12785301,"avatar_url":"https://avatars.githubusercontent.com/u/12785301?v=3","gravatar_id":"","url":"https://api.github.com/users/natsukinoue","html_url":"https://github.com/natsukinoue","followers_url":"https://api.github.com/users/natsukinoue/followers","following_url":"https://api.github.com/users/natsukinoue/following{/other_user}","gists_url":"https://api.github.com/users/natsukinoue/gists{/gist_id}","starred_url":"https://api.github.com/users/natsukinoue/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/natsukinoue/subscriptions","organizations_url":"https://api.github.com/users/natsukinoue/orgs","repos_url":"https://api.github.com/users/natsukinoue/repos","events_url":"https://api.github.com/users/natsukinoue/events{/privacy}","received_events_url":"https://api.github.com/users/natsukinoue/received_events","type":"User","site_admin":false},"body":"","created_at":"2016-11-29T16:30:26Z","updated_at":"2016-11-30T01:31:36Z","closed_at":null,"merged_at":null,"merge_commit_sha":"128154f9a8684f7e68a525cb9fe6cc7b70c53cbe","assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/cakephp/docs/milestones/1","html_url":"https://github.com/cakephp/docs/milestones/3.x","labels_url":"https://api.github.com/repos/cakephp/docs/milestones/1/labels","id":629438,"number":1,"title":"3.x","description":"","creator":{"login":"markstory","id":24086,"avatar_url":"https://avatars.githubusercontent.com/u/24086?v=3","gravatar_id":"","url":"https://api.github.com/users/markstory","html_url":"https://github.com/markstory","followers_url":"https://api.github.com/users/markstory/followers","following_url":"https://api.github.com/users/markstory/following{/other_user}","gists_url":"https://api.github.com/users/markstory/gists{/gist_id}","starred_url":"https://api.github.com/users/markstory/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/markstory/subscriptions","organizations_url":"https://api.github.com/users/markstory/orgs","repos_url":"https://api.github.com/users/markstory/repos","events_url":"https://api.github.com/users/markstory/events{/privacy}","received_events_url":"https://api.github.com/users/markstory/received_events","type":"User","site_admin":false},"open_issues":40,"closed_issues":2012,"state":"open","created_at":"2014-04-14T15:44:13Z","updated_at":"2016-11-29T21:32:26Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/cakephp/docs/pulls/4500/commits","review_comments_url":"https://api.github.com/repos/cakephp/docs/pulls/4500/comments","review_comment_url":"https://api.github.com/repos/cakephp/docs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/cakephp/docs/issues/4500/comments","statuses_url":"https://api.github.com/repos/cakephp/docs/statuses/3bf7821e15d4783d52ef1891ab4fedfd16f097ba","head":{"label":"natsukinoue:3.0","ref":"3.0","sha":"3bf7821e15d4783d52ef1891ab4fedfd16f097ba","user":{"login":"natsukinoue","id":12785301,"avatar_url":"https://avatars.githubusercontent.com/u/12785301?v=3","gravatar_id":"","url":"https://api.github.com/users/natsukinoue","html_url":"https://github.com/natsukinoue","followers_url":"https://api.github.com/users/natsukinoue/followers","following_url":"https://api.github.com/users/natsukinoue/following{/other_user}","gists_url":"https://api.github.com/users/natsukinoue/gists{/gist_id}","starred_url":"https://api.github.com/users/natsukinoue/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/natsukinoue/subscriptions","organizations_url":"https://api.github.com/users/natsukinoue/orgs","repos_url":"https://api.github.com/users/natsukinoue/repos","events_url":"https://api.github.com/users/natsukinoue/events{/privacy}","received_events_url":"https://api.github.com/users/natsukinoue/received_events","type":"User","site_admin":false},"repo":{"id":74769525,"name":"docs","full_name":"natsukinoue/docs","owner":{"login":"natsukinoue","id":12785301,"avatar_url":"https://avatars.githubusercontent.com/u/12785301?v=3","gravatar_id":"","url":"https://api.github.com/users/natsukinoue","html_url":"https://github.com/natsukinoue","followers_url":"https://api.github.com/users/natsukinoue/followers","following_url":"https://api.github.com/users/natsukinoue/following{/other_user}","gists_url":"https://api.github.com/users/natsukinoue/gists{/gist_id}","starred_url":"https://api.github.com/users/natsukinoue/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/natsukinoue/subscriptions","organizations_url":"https://api.github.com/users/natsukinoue/orgs","repos_url":"https://api.github.com/users/natsukinoue/repos","events_url":"https://api.github.com/users/natsukinoue/events{/privacy}","received_events_url":"https://api.github.com/users/natsukinoue/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/natsukinoue/docs","description":"CakePHP CookBook","fork":true,"url":"https://api.github.com/repos/natsukinoue/docs","forks_url":"https://api.github.com/repos/natsukinoue/docs/forks","keys_url":"https://api.github.com/repos/natsukinoue/docs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/natsukinoue/docs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/natsukinoue/docs/teams","hooks_url":"https://api.github.com/repos/natsukinoue/docs/hooks","issue_events_url":"https://api.github.com/repos/natsukinoue/docs/issues/events{/number}","events_url":"https://api.github.com/repos/natsukinoue/docs/events","assignees_url":"https://api.github.com/repos/natsukinoue/docs/assignees{/user}","branches_url":"https://api.github.com/repos/natsukinoue/docs/branches{/branch}","tags_url":"https://api.github.com/repos/natsukinoue/docs/tags","blobs_url":"https://api.github.com/repos/natsukinoue/docs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/natsukinoue/docs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/natsukinoue/docs/git/refs{/sha}","trees_url":"https://api.github.com/repos/natsukinoue/docs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/natsukinoue/docs/statuses/{sha}","languages_url":"https://api.github.com/repos/natsukinoue/docs/languages","stargazers_url":"https://api.github.com/repos/natsukinoue/docs/stargazers","contributors_url":"https://api.github.com/repos/natsukinoue/docs/contributors","subscribers_url":"https://api.github.com/repos/natsukinoue/docs/subscribers","subscription_url":"https://api.github.com/repos/natsukinoue/docs/subscription","commits_url":"https://api.github.com/repos/natsukinoue/docs/commits{/sha}","git_commits_url":"https://api.github.com/repos/natsukinoue/docs/git/commits{/sha}","comments_url":"https://api.github.com/repos/natsukinoue/docs/comments{/number}","issue_comment_url":"https://api.github.com/repos/natsukinoue/docs/issues/comments{/number}","contents_url":"https://api.github.com/repos/natsukinoue/docs/contents/{+path}","compare_url":"https://api.github.com/repos/natsukinoue/docs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/natsukinoue/docs/merges","archive_url":"https://api.github.com/repos/natsukinoue/docs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/natsukinoue/docs/downloads","issues_url":"https://api.github.com/repos/natsukinoue/docs/issues{/number}","pulls_url":"https://api.github.com/repos/natsukinoue/docs/pulls{/number}","milestones_url":"https://api.github.com/repos/natsukinoue/docs/milestones{/number}","notifications_url":"https://api.github.com/repos/natsukinoue/docs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/natsukinoue/docs/labels{/name}","releases_url":"https://api.github.com/repos/natsukinoue/docs/releases{/id}","deployments_url":"https://api.github.com/repos/natsukinoue/docs/deployments","created_at":"2016-11-25T15:30:50Z","updated_at":"2016-11-25T15:30:54Z","pushed_at":"2016-11-29T16:15:20Z","git_url":"git://github.com/natsukinoue/docs.git","ssh_url":"git@github.com:natsukinoue/docs.git","clone_url":"https://github.com/natsukinoue/docs.git","svn_url":"https://github.com/natsukinoue/docs","homepage":"http://book.cakephp.org","size":44665,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"3.0"}},"base":{"label":"cakephp:3.0","ref":"3.0","sha":"62667bfe6025c0e1c37f534362bbaef53af99a12","user":{"login":"cakephp","id":23666,"avatar_url":"https://avatars.githubusercontent.com/u/23666?v=3","gravatar_id":"","url":"https://api.github.com/users/cakephp","html_url":"https://github.com/cakephp","followers_url":"https://api.github.com/users/cakephp/followers","following_url":"https://api.github.com/users/cakephp/following{/other_user}","gists_url":"https://api.github.com/users/cakephp/gists{/gist_id}","starred_url":"https://api.github.com/users/cakephp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cakephp/subscriptions","organizations_url":"https://api.github.com/users/cakephp/orgs","repos_url":"https://api.github.com/users/cakephp/repos","events_url":"https://api.github.com/users/cakephp/events{/privacy}","received_events_url":"https://api.github.com/users/cakephp/received_events","type":"Organization","site_admin":false},"repo":{"id":1514950,"name":"docs","full_name":"cakephp/docs","owner":{"login":"cakephp","id":23666,"avatar_url":"https://avatars.githubusercontent.com/u/23666?v=3","gravatar_id":"","url":"https://api.github.com/users/cakephp","html_url":"https://github.com/cakephp","followers_url":"https://api.github.com/users/cakephp/followers","following_url":"https://api.github.com/users/cakephp/following{/other_user}","gists_url":"https://api.github.com/users/cakephp/gists{/gist_id}","starred_url":"https://api.github.com/users/cakephp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cakephp/subscriptions","organizations_url":"https://api.github.com/users/cakephp/orgs","repos_url":"https://api.github.com/users/cakephp/repos","events_url":"https://api.github.com/users/cakephp/events{/privacy}","received_events_url":"https://api.github.com/users/cakephp/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/cakephp/docs","description":"CakePHP CookBook","fork":false,"url":"https://api.github.com/repos/cakephp/docs","forks_url":"https://api.github.com/repos/cakephp/docs/forks","keys_url":"https://api.github.com/repos/cakephp/docs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/cakephp/docs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/cakephp/docs/teams","hooks_url":"https://api.github.com/repos/cakephp/docs/hooks","issue_events_url":"https://api.github.com/repos/cakephp/docs/issues/events{/number}","events_url":"https://api.github.com/repos/cakephp/docs/events","assignees_url":"https://api.github.com/repos/cakephp/docs/assignees{/user}","branches_url":"https://api.github.com/repos/cakephp/docs/branches{/branch}","tags_url":"https://api.github.com/repos/cakephp/docs/tags","blobs_url":"https://api.github.com/repos/cakephp/docs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/cakephp/docs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/cakephp/docs/git/refs{/sha}","trees_url":"https://api.github.com/repos/cakephp/docs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/cakephp/docs/statuses/{sha}","languages_url":"https://api.github.com/repos/cakephp/docs/languages","stargazers_url":"https://api.github.com/repos/cakephp/docs/stargazers","contributors_url":"https://api.github.com/repos/cakephp/docs/contributors","subscribers_url":"https://api.github.com/repos/cakephp/docs/subscribers","subscription_url":"https://api.github.com/repos/cakephp/docs/subscription","commits_url":"https://api.github.com/repos/cakephp/docs/commits{/sha}","git_commits_url":"https://api.github.com/repos/cakephp/docs/git/commits{/sha}","comments_url":"https://api.github.com/repos/cakephp/docs/comments{/number}","issue_comment_url":"https://api.github.com/repos/cakephp/docs/issues/comments{/number}","contents_url":"https://api.github.com/repos/cakephp/docs/contents/{+path}","compare_url":"https://api.github.com/repos/cakephp/docs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/cakephp/docs/merges","archive_url":"https://api.github.com/repos/cakephp/docs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/cakephp/docs/downloads","issues_url":"https://api.github.com/repos/cakephp/docs/issues{/number}","pulls_url":"https://api.github.com/repos/cakephp/docs/pulls{/number}","milestones_url":"https://api.github.com/repos/cakephp/docs/milestones{/number}","notifications_url":"https://api.github.com/repos/cakephp/docs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/cakephp/docs/labels{/name}","releases_url":"https://api.github.com/repos/cakephp/docs/releases{/id}","deployments_url":"https://api.github.com/repos/cakephp/docs/deployments","created_at":"2011-03-23T04:54:13Z","updated_at":"2016-11-20T05:54:50Z","pushed_at":"2016-11-29T21:32:26Z","git_url":"git://github.com/cakephp/docs.git","ssh_url":"git@github.com:cakephp/docs.git","clone_url":"https://github.com/cakephp/docs.git","svn_url":"https://github.com/cakephp/docs","homepage":"http://book.cakephp.org","size":53483,"stargazers_count":542,"watchers_count":542,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2217,"mirror_url":null,"open_issues_count":53,"forks":2217,"open_issues":53,"watchers":542,"default_branch":"3.0"}},"_links":{"self":{"href":"https://api.github.com/repos/cakephp/docs/pulls/4500"},"html":{"href":"https://github.com/cakephp/docs/pull/4500"},"issue":{"href":"https://api.github.com/repos/cakephp/docs/issues/4500"},"comments":{"href":"https://api.github.com/repos/cakephp/docs/issues/4500/comments"},"review_comments":{"href":"https://api.github.com/repos/cakephp/docs/pulls/4500/comments"},"review_comment":{"href":"https://api.github.com/repos/cakephp/docs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/cakephp/docs/pulls/4500/commits"},"statuses":{"href":"https://api.github.com/repos/cakephp/docs/statuses/3bf7821e15d4783d52ef1891ab4fedfd16f097ba"}}}}
{"actor":{"display_login":"chinpei215"}}