Log message #4263716

# At Username Text
# May 20th 2021, 11:01 neon1024 Ah, I just needed to load the Session one :)
# May 20th 2021, 10:59 neon1024 I much prefer unit tests though over integration tests, as the code under test is much smaller
# May 20th 2021, 10:58 neon1024 I am now mocking the service methods to return the right data and manually writing to the session, whereas I could attach the Session Auth to the Service, etc
# May 20th 2021, 10:57 neon1024 Yeah, it seems that trying to mock the service leads down a rather large rabbit hole
# May 20th 2021, 09:33 steinkel I usually go for integration tests, injecting the desired user in session
# May 20th 2021, 09:08 neon1024 I have created private methods to mock the services and append them to my requests
# May 20th 2021, 08:59 neon1024 Anyone know if there is a section like this for the Authentication / Authorization plugins? https://book.cakephp.org/4/en/development/testing.html#testing-actions-that-require-authentication
# May 19th 2021, 23:03 ndm https://book.cakephp.org/4/en/controllers/middleware.html#body-parser-middleware
# May 19th 2021, 23:03 ndm I'll shoot in the dark... good luck to all the hedgehogs out there.
# May 19th 2021, 23:00 slackebot <tyler.adam.lazenby>
# May 19th 2021, 23:00 tyler.adam.lazenby I know it is sending it
# May 19th 2021, 22:59 slackebot <tyler.adam.lazenby>
# May 19th 2021, 22:58 tyler.adam.lazenby Why isn't cakephp grabbing my posted data when I use fetch in JS
# May 19th 2021, 20:05 etibor but first it wouldb be good if i can make a simple query
# May 19th 2021, 20:04 etibor that will be my next step
# May 19th 2021, 19:49 slackebot $appWhitelist = $this->paginate( $query ); $this->set( compact( 'appWhitelist' ) );```
# May 19th 2021, 19:48 kevin.pfeifer and i use it like that in all my controllers which have a search form ``` $query = $this->AppWhitelist->find()->contain( [ 'StaffMembers' ] ); $query = $this->Search->filter( $query, [ 'OR' => [ 'AppWhitelist.device_ident LIKE' => '%$search%', 'StaffMembers.firstname LIKE' => '%$search%', 'StaffMembers.lastname LIKE' => '%$search%', ] ] );
# May 19th 2021, 19:47 slackebot <kevin.pfeifer>
# May 19th 2021, 19:47 kevin.pfeifer i personally have just 1 Search Component which looks like that
# May 19th 2021, 19:46 kevin.pfeifer because you can pre-define queries in "Custom Finder Methods" so you don't need to built the whole query over and over again https://book.cakephp.org/4/en/orm/retrieving-data-and-resultsets.html#custom-finder-methods
# May 19th 2021, 19:45 kevin.pfeifer or what is the exact thing you want to re-use in multiple controllers
# May 19th 2021, 19:45 kevin.pfeifer since you seem to want to do something with a model in your component: Do you want to not duplicate queries in mutilple controllers? aka. ->where()->orderby() etc.
# May 19th 2021, 19:42 kevin.pfeifer when calling a /documents url?
# May 19th 2021, 19:42 etibor but shows Notice: Notice (1024): Undefined property:
# May 19th 2021, 19:42 etibor i tried what you are saying: $documents = $this->getController()->Documents;
# May 19th 2021, 19:38 etibor i am trying to move my controller's function into the component to reuse it different controllers
# May 19th 2021, 19:37 etibor thank you @khalil
# May 19th 2021, 18:50 khalil Like @kevin.pfeifer said, I think if you tell us what you're trying to achieve with this component, there might be better / easier ways to achieve this
# May 19th 2021, 18:48 kevin.pfeifer well thats what i want to warn you too: depending on which controller uses your component it could be, that sometimes `$this->getController()->Documents` works and sometimes it doesnt
# May 19th 2021, 18:47 khalil If you want to access whatever controller the component is loaded in you can do this: `$controller = $this->getController();`
# May 19th 2021, 18:47 etibor okey thank you for everyone i am going to try this
# May 19th 2021, 18:46 khalil No, it's `$documents = $this->getController()->Documents`
# May 19th 2021, 18:46 kevin.pfeifer first of all - what do you want to achieve with that component
# May 19th 2021, 18:46 etibor this also does not work: $this->Documents = ClassRegistry::init('Documents');
# May 19th 2021, 18:45 khalil in a component you need to use `$this->getController()->Documents` like @greg138 mentioned
# May 19th 2021, 18:45 kevin.pfeifer components are meant to contain functions which are re-used in multiple controllers
# May 19th 2021, 18:44 etibor yes i am try to understand the component concept
# May 19th 2021, 18:41 khalil You're using it in a component?
# May 19th 2021, 18:41 etibor i did the loadModel as normally in other Controller, but that not helped
# May 19th 2021, 18:35 greg138 Are you still in your component? If so, again, it would be `$this->getController()->Documents`
# May 19th 2021, 18:35 khalil @etibor you're using that in a controller it seems, you can load the model by doing this: `$this->loadModel("Documents");`