Chuck,
I see where you're coming from on this.  I was just getting 
sick of putting * in for all the vars that I wanted to 
cache, which was almost every single one.
Here's a proposal that should remove my frustration, while 
using dynamic vars as the $placeholder default:

==========================================
 $var1
 $*var2          ## statically cached
 $*15*var3    ## timed refresh
#cache
 $var4           ## statically cached
 $var5
#cache
==========================================
Thoughts?

Tavis



On Saturday 09 June 2001 08:38, Chuck Esterbrook wrote:
> "The value of each reference will be calculated once at
> start-up and a cached version will be used thereafter."
> -- that's just sooo no-intuitive. And why would I even
> keep the template object around then? The string would do
> just fine.
> Consider:
>  >>> from Cheetah.Template import Template as T
>  >>> values = {'name': 'chck'}
>  >>> src = 'Hello $name.'
>  >>> t = T(src, values)
>  >>> print t
>
> Hello chck.
>
>  >>> values['name'] = 'Chuck'
>  >>> print t
>
> Hello chck.
>
>
> I currently work around this by throwing the Template
> away every time. But then I don't get any benefit from
> the compilation. Maybe I'm even getting some overhead.
>
> I hope you're not gonna give the me '*' explanation as in
> $*var. No other templating system, not Velocity,
> WebMacro, DTML, etc., makes template writers add an extra
> symbol in order to emphatically declare that "yes, this
> variable will vary".
>
> Consider a simple news template:
>
> ------
> <h1>$title</h1>
> <br> $date
> <p> $body
> <hr>
> $author
> ------
>
> I can't create a Template out of this and reuse it for N
> records in the database. I have to throw it away each
> time and lose the benefits of compilation. Or I could
> tell my users that Cheetah, for practical purposes, is
> really a $*# syntax:
>
> ------
> <h1>$*title</h1>
> <br> $*date
> <p> $*body
> <hr>
> $*author
> ------
>
> Which is opposite of shell syntax, Velocity, "reduced
> symbology", etc.
>
> I think the default behavior should be that variable
> values are fetched upon rendering.
>
>
> -Chuck

_______________________________________________
Webware-devel mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/webware-devel

Reply via email to