2009年3月5日星期四

Re: [fw-mvc] postDispatch() runs after _foward

Maybe you should be using the dispatchLoopShutdown() hook if you want code to run at the end of the dispatch loop.

-Hector


On Thu, Mar 5, 2009 at 9:15 AM, Yi Tang <ytang@mbira.com> wrote:
well then, don't you think it's more logical to at least not trigger postDispatch() until the dispatch loop is complete? "postDispatch" gives the connotation that it'll only run after the dispatch loop is complete.


Matthew Weier O'Phinney wrote:
-- Yi Tang <ytang@mbira.com> wrote (on Wednesday, 04 March 2009, 05:17 PM -0600):   
It appears the postDispatch hook of controller plugins get triggered   even with _foward calls, when dispatched is still false.  Is it a bug or   intentional?  It doesn't seem very logical for it to be intentional.     
Yes, it's intentional. _forward() sets the "isDispatched" flag of the request to false, and that flag is checked for as the conditional of the dispatch loop. During preDispatch(), it can be used to indicate that the current action should not be executed, but after that, it is simply used to hint to the dispatch loop that an additional action needs to be taken.    

没有评论: