Log message #4227108

# At Username Text
# Feb 14th 2020, 16:26 ndm What exactly is the final result in `phone_numbers`? I could imagine that it's missing the primary keys which are required for patching existing entities.
# Feb 14th 2020, 16:26 lilhermit No data is changing but it always marks phone_numbers as dirty and duplicates them
# Feb 14th 2020, 16:25 slackebot '{n}',function($number) { return ['number' => $number]; }) ];```
# Feb 14th 2020, 16:25 lilhermit The $data looks like ``` $data = [ 'uuid' => $graphUser->getId(), 'first_name' => $graphUser->getGivenName(), 'last_name' => $graphUser->getSurname(), 'email' => $graphUser->getMail(), 'job_title' => $graphUser->getJobTitle(), 'phone_numbers' => Hash::map($graphUser->getBusinessPhones(),
# Feb 14th 2020, 16:24 lilhermit Patching like `$user = $this->Users->patchEntity($user, $data);`
# Feb 14th 2020, 16:24 lilhermit sure, I load my entity like ``` $user = $this->Users->find('ByUuid', ['uuid' => $graphUser->getId()]) ->contain(['PhoneNumbers']) ->first();```
# Feb 14th 2020, 16:22 ndm @lilhermit I'm not sure, what does your data and code for patching/saving look like?
# Feb 14th 2020, 16:20 ndm no problem
# Feb 14th 2020, 16:20 sebastian.krzewinski. thanks
# Feb 14th 2020, 16:20 sebastian.krzewinski. now is working :)
# Feb 14th 2020, 16:19 sebastian.krzewinski. i see
# Feb 14th 2020, 16:19 ndm @sebastian.krzewinski. Or wait, in CakePHP 4 it's `$this->disableAutoLayout();` now
# Feb 14th 2020, 16:18 lilhermit @ndm Know anything about my saving with associations issue?
# Feb 14th 2020, 16:17 sebastian.krzewinski. i will check
# Feb 14th 2020, 16:17 ndm In that case you've probably removed the `$this->layout = false;` part in `home.php` file, which is responsible for disabling rendering in a layout.
# Feb 14th 2020, 16:17 sebastian.krzewinski. https://i.imgur.com/pmCMN9h.png
# Feb 14th 2020, 16:15 sebastian.krzewinski. pages/home.php is rendering inside layout/default.php
# Feb 14th 2020, 16:14 sebastian.krzewinski. yes
# Feb 14th 2020, 16:12 ndm By `default.php` do you mean a layout, ie `layout/default.php`?
# Feb 14th 2020, 16:10 sebastian.krzewinski. in "/"
# Feb 14th 2020, 16:10 sebastian.krzewinski. my home.php is looks like was rendering in default.php
# Feb 14th 2020, 16:04 sebastian.krzewinski. i send you pm
# Feb 14th 2020, 16:02 ndm @sebastian.krzewinski. You'll have to provide a little more details as to what exactly you've done, and what exactly the result is, "_2 pages in 1_" could mean all sorts of things.
# Feb 14th 2020, 15:58 sebastian.krzewinski. im little bit confused bec. today i edit my home.php and its looks like 2 pages in 1 ( home and default)
# Feb 14th 2020, 15:57 ndm @val Have you tried a custom (eager) loader as I've suggested? You can do all sorts of crazy things that way: https://gist.github.com/ndm2/b417e3fa683a972e295dc0e24ef515e3
# Feb 14th 2020, 15:57 simon781 Afternoon - I have had a dig through the docs but can't see any obvious pattern for using read replicas - we'd probably be looking at offloading reads to a replica DB for some tables. I know we could hook into before events and switch config but is there support for this?
# Feb 14th 2020, 15:53 sebastian.krzewinski. Hi all
# Feb 14th 2020, 15:52 lilhermit Changing the saveStrategy to replace I don't get duplicates but replacing isn't idea for my solution
# Feb 14th 2020, 15:43 lilhermit Hi I'm trying to save an entity with hasMany associations, it always creates new records. I fetch the record initially with the association then patch it with an array. The associated data is the same but it always shows are new and dirty
# Feb 14th 2020, 14:14 slackebot {$__cakeID__$};`
# Feb 14th 2020, 14:14 val > A complete SQL query CakePHP can use to fetch associated model records. This should be used in situations that require highly customized results. If a query you’re building requires a reference to the associated model ID, use the special `{$__cakeID__$}` marker in the query. For example, if your Apple model hasMany Orange, the query should look something like this: `SELECT Orange.* from oranges as Orange WHERE Orange.apple_id =
# Feb 14th 2020, 14:14 val from 2.x cookbook:
# Feb 14th 2020, 14:13 val @lpj145 It is not clear what you mean. How would you get the same ids in 3.x query builder as they are in `{$__cakeID__$}` in 2.x?
# Feb 14th 2020, 13:22 lpj145 more simple clear and secure.
# Feb 14th 2020, 13:21 lpj145 on finder option you can pass a query builder with really you want...
# Feb 14th 2020, 13:21 lpj145 @val https://api.cakephp.org/3.8/class-Cake.ORM.Table.html#_hasMany
# Feb 14th 2020, 13:17 lpj145 @val have a good way to conditionable contained data.
# Feb 14th 2020, 13:07 val > 'hasMany' => [ > 'ShopCategory' => [ > 'conditions' => [ > 'ShopCategory.id IN ( > SELECT ShopCategoryItem.shop_category_id > FROM shops AS Shop > LEFT JOIN shop_category_items AS ShopCategoryItem > ON ShopCategoryItem.shop_id = Shop.id > WHERE Shop.resource_type = "event" AND Shop.resource_id = {$__cakeID__$} > )', > ], > 'foreignKey' => false, > ], > ],
# Feb 14th 2020, 13:07 val @lorenzo, here is a bit simplified example:
# Feb 14th 2020, 12:56 neon1024 Good thanks :thumbsup:
# Feb 14th 2020, 12:34 lorenzo @val can you explain a bit more? there is no 1:1 way to translate that for cake 3, but in general is easy as cake 3 makes custom association conditions quite easy