# |
Feb 24th 2020, 07:01 |
alexdd55976 |
@cnizzardini did you checkout https://github.com/ADmad/cakephp-jwt-auth? |
# |
Feb 24th 2020, 07:00 |
alexdd55976 |
morning |
# |
Feb 24th 2020, 04:04 |
cnizzardini |
Are there any JWT examples for CakePHP 4? |
# |
Feb 23rd 2020, 20:07 |
trash.mail.collector |
yeah, that was it... I had an error in one of my apache config files... thanks @ndm |
# |
Feb 23rd 2020, 19:46 |
ndm |
First thing I'd check is `mod_rewrite` |
# |
Feb 23rd 2020, 19:45 |
trash.mail.collector |
I'm sure it's not being hit. I just can't figure out why not. / is definitely hitting the PagesController, but /users isn't hitting UsersController |
# |
Feb 23rd 2020, 19:43 |
ndm |
What exactly do you mean by "_default error page_"? The default apache error page? That would mean your application isn't being hit. |
# |
Feb 23rd 2020, 19:41 |
trash.mail.collector |
I have 'debug' => true in app.php and app_local.php, but I still only get the default error page (and no errors in the cakephp logs -- the 404 only shows up in apache's access log) |
# |
Feb 23rd 2020, 19:40 |
ndm |
Enable debug mode to get a proper error page that details the actual error. |
# |
Feb 23rd 2020, 19:37 |
trash.mail.collector |
Cake 4.0.3: I just created skeleton code for users ("bin/cake bake all users"), but I'm getting 404s for all of the actions when I try to access /users or /users/*. I have "$builder->fallbacks();" in config/routes.php, but even when I explicitly map a route (e.g., "$builder->connect('/users', ['controller' => 'Users', 'action' => 'index']);"), I still get a 404. Any ideas? |
# |
Feb 23rd 2020, 17:24 |
noel |
So there are two ways to go here that I know of... A: use `$this->posts->get()` and then transform the data structure you get back. The disadvantage is you loop twice. B: write your own custom SQL and iterate just once, building up a custom data structure. |
# |
Feb 23rd 2020, 17:21 |
noel |
Strange format you're looking for. |
# |
Feb 23rd 2020, 17:20 |
noel |
You wouldn't override it, you just transform the request's output, as I understand it (I'm drawing on my cakephp 2.x knowledge here, it might be different in 3.x) |
# |
Feb 23rd 2020, 17:15 |
hollistergraham123 |
How would I override the Hash method for the request |
# |
Feb 23rd 2020, 17:14 |
hollistergraham123 |
This would be the expected output |
# |
Feb 23rd 2020, 17:14 |
hollistergraham123 |
```$post = $this->Posts->get(1, ['contain' => ['Categories']]; $post = [ 'id' => 1, 'name' => 'Lorem Epsium', 'categories' => [ 'categories' => [ [ 'id' => 1, 'name' => 'Lorem Epsium' ], [ 'id' => 2, 'name' => 'Lorem Epsium' ], ], '_ids' => [1, 2] ] ]``` |
# |
Feb 23rd 2020, 17:12 |
hollistergraham123 |
```$post = $this->Posts->get(1, ['contain' => ['Categories']];``` |
# |
Feb 23rd 2020, 17:09 |
noel |
If I understand you correctly |
# |
Feb 23rd 2020, 17:09 |
noel |
@hollistergraham123 yes look at `vendor/cakephp/src/Utility/Hash.php` |
# |
Feb 23rd 2020, 16:34 |
hollistergraham123 |
Is there a way to change the output of associations. Like rather then being like post->categories being an array of categories we’d do post->categories then an array of categories and _ids with categories being an array of the categories objects and _ids being an array of their primary key |
# |
Feb 23rd 2020, 15:25 |
matthttam |
@admad It is using the new auth plugin. |
# |
Feb 23rd 2020, 14:48 |
noel |
Hi all. I'm about to try out the ORM's transactions: https://book.cakephp.org/3/en/orm/database-basics.html#using-transactions. I'm using `friendsofcake/CRUD`. Can I implement a transaction within the `beforeSave()`event listener? I'm concerned that it might somehow interfere with the actual save? |
# |
Feb 23rd 2020, 06:52 |
challgren |
authentication/authorization now @admad |
# |
Feb 23rd 2020, 06:35 |
admad |
I have never used the cakedc/users plugin so don't know if the cake 4 compatible version uses the new auth plugin or still the core AuthComponent hence can't tell how to configure it to use the custom finder |
# |
Feb 23rd 2020, 05:29 |
slackebot |
that I can add a new finder name?...Or is there a place in the config to set this value? What am I passing to it exactly? Should userModel be changed to MyUsers? I'm assuming 'finder' would be set to whatever custom function I used in the previous paragraph; 'FindMyUsers' for example. Thanks again for the help though. I'm learning quickly but still feel very slow right now. |
# |
Feb 23rd 2020, 05:29 |
slackebot |
that. I found the Custom Finder Methods from the documentation. So maybe a function like FindMyUsers? I'm not sure what to name it. I'm assuming it can use the code above to get the appropriate data though. _and use `finder` config of `OrmResolver` of the auth plugin to use that finder_ I'm looking at the source of authentication/src/Identifier/Resolver/OrmResolver now. I sort of get it but don't understand. Where would I need to call OrmResolver so |
# |
Feb 23rd 2020, 05:29 |
matthttam |
@admad Thanks for the response :) I hope you like questions because I understood some of what you said but man I am confused. _setup association between your users model and profiles model._ The Model/Table/MyUsersTable which extends the CakeDC\Users\Model\Table\UsersTable has an association which is allowing the above code to work. So I think that is done. _Then create a custom finder in users which contains the profile_ Thank you for |
# |
Feb 23rd 2020, 04:55 |
admad |
@matthttam setup association between your users model and profiles model. Then create a custom finder in users which contains the profile and use `finder` config of `OrmResolver` of the auth plugin to use that finder |
# |
Feb 23rd 2020, 03:45 |
matthttam |
Maybe I should be storing this value in the session data on some kind of afterLogon hook.... |
# |
Feb 23rd 2020, 03:42 |
slackebot |
` `$user = $Users->get($current_user_id, [` `'contain' => ['Profiles']` `]);` `$api_key = $user->profile->freshservice_api_key;` `$this->set(compact('api_key'));` |
# |
Feb 23rd 2020, 03:42 |
slackebot |
configure that the Users table should always use a different class and entityclass? `// Query Users Table` `$Users = (new TableLocator())->get('Users', [` `'className' => 'App\Model\Table\MyUsersTable',` `'entityClass' => 'App\Model\Entity\MyUser',` `]);` `$current_user_id = $this->getRequest()->getAttribute('identity')['id'];` ` |
# |
Feb 23rd 2020, 03:42 |
matthttam |
So I'm using CakeDC/Users plugin and I've extended the table and entity by creating MyUsersTable and MyUser. This is to create a Profiles table that link and store additional values; I didn't want to modify the users table directly honestly. So if I wanted to query the Users table and pull an API key stored in their profile this is the best I could come up with. Is there a cleaner way to do this or that about right? Like is there a way to |
# |
Feb 22nd 2020, 22:06 |
cnizzardini |
Also does anyone know where I tell cake what the token it should be using is for Authentication.Token |
# |
Feb 22nd 2020, 21:33 |
cnizzardini |
Has anyone implemented the cakedc/users plugin as an api service? or does it strictly require html views etc.. |
# |
Feb 22nd 2020, 18:18 |
matthttam |
And I just found the log/error.log file. :) I am so slow sometimes. |
# |
Feb 22nd 2020, 18:11 |
matthttam |
So my app is throwing an error and I want to export a stacktrace. Debug kit shows a Missing Datasource Configuration exception. How do I make a stacktrace file? I don't know where to put a debugger command so that it generates an actual stacktrace. |
# |
Feb 22nd 2020, 18:09 |
matthttam |
:+1:@davinci No problem. Good luck |
# |
Feb 22nd 2020, 18:08 |
davinci |
ok, thanks much. I'm headed in the right direction now |
# |
Feb 22nd 2020, 18:08 |
matthttam |
You either need to figure out the environment variable that changes where it is looking for php. or make a link there so it'll work. I'm not sure how or which is best honestly. |
# |
Feb 22nd 2020, 18:06 |
davinci |
ah - that's no good |
# |
Feb 22nd 2020, 18:06 |
matthttam |
it is looking in /usr/bin/php for your php install. |