Re: [SMARTY-DEV] feature request: isa operator

From: Date: Wed, 18 Jun 2003 21:18:00 +0000
Subject: Re: [SMARTY-DEV] feature request: isa operator
References: 1  Groups: php.smarty.dev 
Request: Send a blank email to php-smarty-dev+get-1619@lists.php.net to get a copy of this message
Something else that bothers me about Andrei's comment is this: I understand that Smarty is often called TOO SOON in the application process. For myself, it is usually the very LAST thing that is called. Prior to that, all of my application and objects execute and I pass a single, fully processed object to Smarty for output and ONLY OUTPUT. Within Smarty, my finalized object fairly much does nothing other than hold data. It saves me from having to make a lot of Smarty assignments when my object already holds the required content. So I'm using Smarty as a renderer and calling Smarty as a final step of my application processing, assigning it a single (perhaps hierarchical) object to output. That underlies an assumption that my template has to know a few things about the object layout to be able to access the data. (This assumption is also present when using Smarty without objects, but it is a more global and messy assumption in that case.) Though I am free to pass any object to any template, that doesn't mean that the selected template is actually able to handle that object. I could set properties on my objects that describe the object or I can write a filter and custom function and do some other hackneyed thing so that the templates can decide if it should even BOTHER to process its input. OR within the template, I can test the assigned object itself in a very clean and simple way (and without any inlined PHP code). That's what I decided was best for myself. Remember, objects can be passed to templates even from within a template, so saying that the application programmer is responsible for ensuring that proper templates are selected is NOT a good enough response. If you are really talking about separation of business and rendering logic, then you bloody well better have proper validation tools on both ends of that equation because you can't trust what is coming into your interface since you are supposedly isolated from other application areas. Finally, no amount of limiting objects is going to prevent people from putting application logic in their templates since doing so is not a syntax issue, but instead a "design" (or lack-thereof) issue. I thought that was understood. Greetings. __________________________________ Do you Yahoo!? SBC Yahoo! DSL - Now only $29.95 per month! http://sbc.yahoo.com

« previous php.smarty.dev (#1619) next »