# |
Feb 14th 2020, 16:30 |
lilhermit |
Yep just adding to pastebin |
# |
Feb 14th 2020, 16:30 |
ndm |
_before_ patching |
# |
Feb 14th 2020, 16:29 |
ndm |
I'll belive it when I see it ;) Can you show `debug()` of `$user` and `$data`? |
# |
Feb 14th 2020, 16:28 |
lilhermit |
The primary keys are there before the patch but after they are all new entities |
# |
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. |