From what I understand, grails applications with the angular profile don't technically need controllers as the domains support the http requests. So, what exactly is the point of the controller class in these grails applications?
Here is an example I am working on:
I have a Wardrobe class, and a Color Class. Wardrobes have colors, and I want the functionality to add and delete colors from specific wardrobes. However, colors may be a part of many different wardrobes.
I understand I can just add a color to a wardrobe without the controller class, by calling a post request to my 'localhost:8080/color' specifying the wardrobe. Can I also delete a color from a wardrobe with the same logic?
If this is true, why do I need a controller class? In this tutorial, I notice they leave the controller class out. https://www.djamware.com/post/5a10b5f580aca75eadc12d6c/grails-3-angular-5-profile-crud-web-application-example
Just wondering what exactly is the point of having a controller class when working with angular, and when it can be avoided and when it is needed.
Thanks
From what I understand, grails applications with the angular profile don't technically need controllers as the domains support the http requests.
That is not the case. We do not support routing requests to a domain class.
In this tutorial, I notice they leave the controller class out. https://www.djamware.com/post/5a10b5f580aca75eadc12d6c/grails-3-angular-5-profile-crud-web-application-example
It is not really true that they left the controller out. There is a controller there, there just isn't source code for it because there doesn't need to be. The @Resource(uri='/customer')
annotation on the Customer
classes causes CustomerController
to be created at compile time.
Just wondering what exactly is the point of having a controller class when working with angular, and when it can be avoided and when it is needed.
When working with Angular (or anything else that wants to send a request to the Grails app), a controller is generally the thing that will receive the request and decide what to do.