Hi Bakers,

It has been a while since I've been working with CakePHP, sad I know, but 
had other projects on the go. I've been working out for a while a different 
and more consistent method of routing requests and serving up pages. I 
would enjoy your response and thoughts on this.

The objective is to have a universal way of rendering pages. Currently, the 
rendering process is different between a full page request, an element / 
requestAction process, an ajax update returning the render html, and a ajax 
update return just data which then updates the client side html using 
javascript.

I'll illustrate this solution via an example.

   1. A full page request comes in for /controllerA/actionB/.
   2. Instead of the request going to ControllerA->ActionB(), the request 
   goes to PageRendererX->RenderRequest().
   3. PageRendererX->RenderRequest() looks up the elements (with 
   configuration variables) it needs to render for page /controllerA/actionB/ 
   and what zones of the html it needs to render them in.
   4. View renders the request by running through the zones and processing 
   each allocated element.
   5. Each element then fetches its data using requestAction and passing 
   the required variables to the action.
   6. Each action simple returns the data as usual and the element renders 
   its portion of code.
   
If this process was followed, it would allow the following:

   1. Any element on the client side could be automatically ajax updateble.
   2. Any element javascript code could update the html via an ajax data 
   request. This simple routes to an AjaxRender controller on the server, 
   which simply processes and returns the data similar to how requestAction 
   would to an element.

The process would most likely need a universal handler for the 
communications between client and server. For example, if a controller or 
element is adding javascript to the page, this needs to be understood by 
the handler, so it can insert/execute the javascript on the client side as 
needed.

Using this process potentially will lead to simpler code, easier rendering 
capabilities, and leaves the rendering very adaptable.

I have not considered the performance impact of this.

What are your thoughts?

-- 
Our newest site for the community: CakePHP Video Tutorials 
http://tv.cakephp.org 
Check out the new CakePHP Questions site http://ask.cakephp.org and help others 
with their CakePHP related questions.


To unsubscribe from this group, send email to
[email protected] For more options, visit this group at 
http://groups.google.com/group/cake-php

Reply via email to