[Zope-CMF] CMF, templates, and dtml

Dennis Allison allison@shasta.Stanford.EDU
Thu, 23 May 2002 09:29:39 -0700 (PDT)


Dennis Allison * Computer Systems Laboratory * Gates 227
               * Stanford University *  Stanford CA  94305
	       * (650) 723-9213 * (650) 723-0033 fax
	       * allison@shasta.stanford.edu
	       * allison@sumeru.stanford.edu



On Thu, 23 May 2002, Florent Guillaume wrote:

> Chris Withers  <chrisw@nipltd.com> wrote:
> > Dennis Allison wrote:
> > > I did some experimentation a few weeks ago with CMF and ran into
> > > problems when I mized template and dtml pages.  At that time, CMF
> > > 1.2 seemed to be template based with incomplete support for dtml.
> > > Has this changed with 1.3?
> > 
> > No, DTML is being phased out ;-)
> 
> Well, ChrisW likes to diss DTML and say it's useful for nothing :-)
> but actually it will still be useful, and maintained, and ZC is
> definitely not phasing it out.
> Simply now there is an alternative that may be better in a number of
> situations.
> 
> On Dennis's specific problem: what pages did you miss ?
> 
> Also remember that the F in CMF is for Framework, and that everybody
> is expected to adapt it to his needs, which means writing better
> views if necessary.
> 

I think mixed systems make sense both from the point of view of using the right
tool for the job and from the point of view of supporting legacy components. 
One of the problems I encountered had to do with the skins--they were managed
differently and inconsistently for dtml and templates. This made it difficult to
construct and maintain a seamless site using both dtml and template elements. It
also appeared that the dtml-support had been slighted and some pieces were as
yet unimplemented.  I did only spend a single day exploring, but I encountered
enough problems for me to decide to use a different implementation for some
pressing work. 

And, yes, the "F" in CMF is for "Framework".  As I understand the term, a framework
provides the underlying mechanism which the user extends but leaves the
framework intact!  If you don't do that, you create specializations which need
to be ported when the framework gets updated--and that causes problems and extra
work.

-d