Ok, I have template files which I know will require to be between <cfoutput>
tags, however placing a <cfoutput>
tag around a <cfinclude>
won't work, and anything with a <cfmodule>
won't work as that doesn't allow me to manipulate the variables
scope.
So, any ideas - no matter how complex - which would allow me to include such a template file and have it act as if it's between <cfoutput>
tags?
Bit of context: It's for a 'framework' I am working on and requiring every template file to start and end with a <cfoutput>
tag seems a real waste, especially because the less 'coldfusiony' the template files look, the better IMO.
I was going to suggest the render()
option, with the caveat it's a bloody awful bit of functionality in OpenBDML (or whatever they want to call their version of CFML), and I think should be avoided. I can't see how it doesn't cause the CFML to be recompiled every request, which is a helluva overhead. I think you're better off modifying the mark-up when it gets saved/read to wrap/unwrap it in <cfoutput>
tags, that way the resultant CFML will only be recompiled when the file actually changes. Which will be really a lot less often than it's read.
Prompted by your question, I did a bit of a write up on the CFML compile process, showing why having the <cfoutput>
tags in a separate file doesn't work. Apologies it took so long to write & follow-up with here.