# |
Jan 10th 2020, 14:05 |
ndm |
As I said there's lots of different ways to do it... the translate behavior creates `hasOne` associations for every single translatable field, and a single `hasMany` association for all fields. Searching via the latter could look something like left joining it on the field name, and then using conditions on its `content` field and the main tables actual field, something like: ```$query = $table ->find() ->leftJoinWith('I18n', function |
# |
Jan 10th 2020, 14:04 |
ndm |
of course, it always has to be most complex one :) |
# |
Jan 10th 2020, 13:53 |
naino |
both |
# |
Jan 10th 2020, 13:50 |
ndm |
And you want to only search in the translations, or also in the original language? |
# |
Jan 10th 2020, 13:46 |
ndm |
So like the second example then... |
# |
Jan 10th 2020, 13:44 |
naino |
What i want to do is to query an entity field in whatever language i want, and be able to check if there's a match on any translation in regard of that field |
# |
Jan 10th 2020, 13:43 |
challgren |
Yeah put the active in the or |
# |
Jan 10th 2020, 13:43 |
challgren |
Duh! |
# |
Jan 10th 2020, 13:43 |
dereuromark |
OR => [x, y, z], 1 element has no effect |
# |
Jan 10th 2020, 13:42 |
dereuromark |
or what ndm says, yeah |
# |
Jan 10th 2020, 13:42 |
dereuromark |
then you dont need the or |
# |
Jan 10th 2020, 13:42 |
ndm |
your `active` conditions needs to go into the `OR` key |
# |
Jan 10th 2020, 13:42 |
challgren |
I expect active = 1 OR id = 1 |
# |
Jan 10th 2020, 13:41 |
challgren |
Yeah Im trying to find any active OR with the id = 1 |
# |
Jan 10th 2020, 13:41 |
ndm |
`OR` will only affect the conditions nested under that key |
# |
Jan 10th 2020, 13:40 |
challgren |
It outputs ```SELECT Tenants.id AS `Tenants__id`, Tenants.name AS `Tenants__name` FROM tenants Tenants WHERE ( active = 1 AND id = 1 ) ORDER BY Tenants.name ASC``` |
# |
Jan 10th 2020, 13:39 |
challgren |
Anyone have any idea why an OR isn’t working? `$tenants = $this->Users->Tenants->find(‘list’)->where([ [‘active’ => true], ‘OR’ => [[‘id’ => $user->tenant_id]], ]);` |
# |
Jan 10th 2020, 13:09 |
slackebot |
in multiple languages? Like `where en_title = 'term' OR es_title = 'term' OR it_title = 'term'`? Or maybe something different? |
# |
Jan 10th 2020, 13:09 |
ndm |
@naino Sorry, I was outside, had to shower some weasels off of my roof... no questions please, it's complicated :upside_down_face: Multiple languages at once is of course the not so straight forward one. There's probably 48 different ways to do it... what exactly are your conditions, like, different localized phrases on a specific field maybe? Like `where title = 'en term' OR 'es term' OR 'it term'`? Or maybe a single phrase vs a specific fields |
# |
Jan 10th 2020, 12:16 |
naino |
multiple languages in a single query :) |
# |
Jan 10th 2020, 12:06 |
ndm |
Certainly possible... the question is whether you want to search for one language at a time, or multiple languages in a single query? |
# |
Jan 10th 2020, 11:57 |
naino |
With ORM, is it possible to search in DB on a field which is translatable? I would like to be able to search in english, spanish or italian for example. Thanks. |
# |
Jan 10th 2020, 11:35 |
jotpe |
Ah found the error, I use a UploadBehaviour which didn't return in a special case. |
# |
Jan 10th 2020, 11:32 |
jotpe |
Hm Thanks, @ndm |
# |
Jan 10th 2020, 11:27 |
ndm |
`beforeSave` handlers aborting the operation, application rules that do not specify an error field, sometimes in belongs to many junction records that are being swallowed in certain situations... and lots of stuff that I can't think of right now |
# |
Jan 10th 2020, 11:24 |
jotpe |
What could cause a save operation to fail, without having any `hasErrors()` oder `getErrors()` on the entity? |
# |
Jan 10th 2020, 11:21 |
naino |
alright thanks :) |
# |
Jan 10th 2020, 11:05 |
dereuromark |
composer itself is not allowed to raise locked dependencies in your root require without explicit statements. |
# |
Jan 10th 2020, 11:05 |
dereuromark |
this - or manually adjusting the composer.json file and running a global update |
# |
Jan 10th 2020, 11:04 |
dereuromark |
the correct working solution is to chain the requirements for composer `php composer.phar require --update-with-dependencies "cakephp/cakephp:4.0.*" cakephp/bake` ... and others if necessary |
# |
Jan 10th 2020, 11:01 |
ndm |
You probably need up loosen/update your existing constraints, 4.x requires bake 2.x. Check the `composer.json` in the default app template: https://github.com/cakephp/app/blob/4.0.2/composer.json |
# |
Jan 10th 2020, 10:53 |
naino |
Hi, I'm trying to upgrade to CakePHP 4.x with Upgrade Guide and following command: php composer.phar require --update-with-dependencies "cakephp/cakephp:4.0.*" but I'm having this error: Installation request for cakephp/bake (locked at 1.12.0, required as ^1.1) -> satisfiable by cakephp/bake[1.12.0] |
# |
Jan 10th 2020, 10:39 |
jotpe |
Hi, folks! |
# |
Jan 10th 2020, 10:02 |
francisdoydora |
but at least queue is working <3 |
# |
Jan 10th 2020, 10:02 |
francisdoydora |
@challgren thanks! it's working now but a lot of other things got broken hehe |
# |
Jan 10th 2020, 09:52 |
challgren |
@francisdoydora set it to your domain and the fullBase should work. From the command line cake isn’t able to know the full hostname |
# |
Jan 10th 2020, 09:52 |
challgren |
Upgrading to CakePHP 3.x :P |
# |
Jan 10th 2020, 09:51 |
val |
what is the best approach for overriding JsonView class in 2.x? |
# |
Jan 10th 2020, 09:51 |
francisdoydora |
it's currently set to false |
# |
Jan 10th 2020, 09:49 |
challgren |
app.php App.fullBaseUrl setting |
# |
Jan 10th 2020, 09:48 |
challgren |
Are you setting the domain? |