Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Understanding _ids array in CakePHP model data

Using CakePHP v3.1 w/ Postgres DB. When I retrieve records with associations I often see an extra array of _ids. Something like this:

    ...
    (int) 26 => [
        'agency_id' => (int) 23,
        'routes' => [
            '_ids' => (int) 2
        ]
    ]

Or sometimes:

     '_ids' => Array (
        0 => 1
        1 => 5
        2 => 3
        3 => 4
     )
]

I would like to understand:

  1. How and why do these magic _ids appear?
  2. Is there a way to control or prevent that behavior?
like image 621
emersonthis Avatar asked Sep 06 '16 23:09

emersonthis


1 Answers

How and why do these magic _ids appear?

The _ids property generally comes in from request data. It could be left behind on an entity if the association isn't completely marshalled though.

If you an provide a way to reproduce _ids coming out of the ORM, please open an issue on github as that shouldn't be happening.

like image 54
Mark Story Avatar answered Sep 21 '22 20:09

Mark Story